.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}}:root{--bg:#eef1f5;--panel:#fff;--text:#1c2430;--muted:#5f6b7a;--line:#e2e6ec;--accent:#0f766e;--accent-bg:#e3f2f0;--good:#1f8a4c;--good-bg:#e8f5ee;--bad:#c0362c;--bad-bg:#fbecea;--warn:#9a6200;--warn-bg:#fdf4e3;--sitting:#ec3fc8;--standing:#843fe5;--heat-bad:#e0645a;--heat-weak:#f4b9b2;--heat-ok:#b9dd94;--heat-good:#5fb05a;--heat-none:#eceff3;font-feature-settings:"cv02", "cv03", "cv04", "cv11";color:var(--text);background:var(--bg);font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}html,body{background:var(--bg);height:100%;margin:0;padding:0;overflow:hidden}*{box-sizing:border-box}a{color:var(--accent)}button{font:inherit;color:inherit}.app{box-sizing:border-box;background:var(--bg);flex-direction:column;width:100vw;height:100vh;display:flex;overflow:hidden}.app-header-area{z-index:100;flex-direction:column;flex-shrink:0;display:flex}.workspace{flex-direction:row;flex:1 1 0;min-height:0;display:flex;overflow:hidden}.workspace-live,.workspace-profit,.workspace-bunching{flex-direction:row;width:100%;height:100%;min-height:0;display:flex;overflow:hidden}.content{box-sizing:border-box;flex-direction:column;flex:1 1 0;min-width:0;height:100%;min-height:0;padding:10px 14px;display:flex;overflow:hidden}.footer{color:var(--muted);flex-shrink:0;font-size:11px;line-height:1.2}.topbar{color:#fff;box-sizing:border-box;background:#0d1b2a;border-bottom:1px solid #ffffff14;flex-shrink:0;justify-content:space-between;align-items:center;gap:16px;padding:8px 18px;display:flex;box-shadow:0 4px 16px -2px #0d1b2a40}.topbar-left{flex-shrink:0;align-items:center;gap:14px;display:flex}.brand{flex-shrink:0;align-items:center;gap:12px;display:flex}.brand-logo-badge{background:linear-gradient(135deg,#06b6d4,#2563eb);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;display:flex;box-shadow:0 2px 8px #06b6d44d}.brand-bus-icon{color:#fff;width:18px;height:18px}.brand-title-row{align-items:center;gap:8px;display:flex}.brand-name{color:#fff;letter-spacing:-.02em;font-size:16px;font-weight:800}.brand-tag{text-transform:uppercase;letter-spacing:.05em;color:#38bdf8;background:#06b6d426;border:1px solid #06b6d44d;border-radius:4px;padding:2px 6px;font-size:10px;font-weight:700}.subtitle{color:#94a3b8;margin:1px 0 0;font-size:11px}.tabs{background:#111e2e;border:1px solid #1e293b;border-radius:10px;flex-shrink:0;gap:4px;padding:3px;display:flex}.tabs a{color:#94a3b8;white-space:nowrap;border-radius:7px;padding:6px 14px;font-size:13px;font-weight:600;text-decoration:none;transition:all .15s}.tabs a:hover{color:#f1f5f9;background:#ffffff0d}.tabs a.active{color:#fff;background:#2563eb;box-shadow:0 2px 6px #2563eb66}.topbar-right{flex-shrink:0;align-items:center;gap:8px;margin-left:auto;display:flex}.pill-warning{color:#fbbf24;cursor:help;white-space:nowrap;text-overflow:ellipsis;background:#f59e0b26;border:1px solid #f59e0b59;border-radius:999px;flex-shrink:1;max-width:260px;padding:4px 8px;font-size:11px;font-weight:600;overflow:hidden}.button{color:#f1f5f9;cursor:pointer;white-space:nowrap;background:#1e293b;border:1px solid #334155;border-radius:8px;flex-shrink:0;padding:5px 10px;font-size:12px;font-weight:600;transition:all .15s}.button:hover{background:#27354a;border-color:#475569}.button-primary{color:#fff;background:#2563eb;border-color:#3b82f6}.button-primary:hover{background:#1d4ed8}.button-subtle{color:#cbd5e1;background:#1e293b;border-color:#334155}.feed{color:#34d399;white-space:nowrap;align-items:center;gap:6px;font-size:12px;font-weight:600;display:flex}.feed-error{color:#f87171}.pulse-dot{border-radius:50%;width:8px;height:8px;display:inline-block}.pulse-ok{background:#10b981;animation:2s ease-in-out infinite pulse-ring;box-shadow:0 0 8px #10b981}.pulse-error{background:#ef4444;box-shadow:0 0 8px #ef4444}@keyframes pulse-ring{0%{opacity:.8;transform:scale(.9)}50%{opacity:.3;transform:scale(1.2)}to{opacity:.8;transform:scale(.9)}}.panel{background:var(--panel);border:1px solid var(--line);border-radius:12px;flex-direction:column;min-width:0;min-height:0;padding:10px 12px;display:flex}.panel h3{margin:0 0 8px;font-size:14px}.hint{color:var(--muted);font-size:11px;font-weight:400}.note{color:var(--muted);margin:6px 0 0;font-size:12px;line-height:1.45}.empty{color:var(--muted);margin:0;font-size:13px}.footer{color:var(--muted);font-size:11px}.rail{flex-direction:column;gap:10px;min-height:0;display:flex}.rail-routes{flex:1;overflow:auto}.rail-routes h3{flex-direction:column;display:flex}.rail-item{border:1px solid var(--line);background:var(--panel);text-align:left;cursor:pointer;border-radius:8px;justify-content:space-between;align-items:center;gap:6px;width:100%;margin-bottom:4px;padding:6px 8px;font-size:13px;transition:all .15s;display:flex}.rail-item:hover{background:#f8fafc;border-color:#cbd5e1}.rail-item.on{color:#1e3a8a;background:#eff6ff;border-color:#93c5fd;font-weight:600}.rail-item-left{flex:1;align-items:center;gap:7px;min-width:0;display:flex}.rail-item-right{flex-shrink:0;align-items:center;gap:6px;display:flex}.route-badge-pill{letter-spacing:-.01em;border-radius:6px;flex-shrink:0;padding:2px 6px;font-size:10px;font-weight:800}.route-badge-pill.trunk{color:#fff;background:#0d1b2a}.route-badge-pill.branch{color:#fff;background:#334155}.route-badge-pill.all-fleet{color:#fff;background:#2563eb}.rail-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.rail-value{font-variant-numeric:tabular-nums;color:var(--muted);font-weight:600}.rail-value.good{color:var(--good)}.rail-value.bad{color:var(--bad)}.segmented{flex-direction:column;gap:3px;display:flex}.segmented button{border:1px solid var(--line);background:var(--panel);text-align:left;cursor:pointer;border-radius:8px;padding:6px 8px;font-size:13px}.segmented button.on{background:var(--accent-bg);color:var(--accent);border-color:#b7dcd7;font-weight:600}.cards{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.cards-2{grid-template-columns:repeat(2,minmax(0,1fr))}.tile{background:var(--panel);border:1px solid var(--line);border-radius:12px;min-width:0;padding:9px 12px}.tile-good{background:var(--good-bg);border-color:#bfe3cd}.tile-bad{background:var(--bad-bg);border-color:#f0c4bf}.tile-label{color:var(--muted);font-size:12px}.tile-value{font-variant-numeric:tabular-nums;white-space:nowrap;text-overflow:ellipsis;margin-top:1px;font-size:24px;font-weight:700;overflow:hidden}.tile-good .tile-value{color:var(--good)}.tile-bad .tile-value{color:var(--bad)}.tile-hint{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.estimate-mark{vertical-align:1px;background:#eef0f3;border-radius:4px;margin-left:6px;padding:0 4px;font-size:10px;font-weight:600}.profit{grid-template:"cards cards cards""gauge hourly hourly"minmax(0,1fr)"heat heat load"minmax(0,1.25fr)/minmax(220px,.75fr) minmax(0,1.25fr) minmax(0,1fr);gap:10px;min-width:0;height:100%;min-height:0;display:grid;overflow:hidden}.profit .cards{grid-area:cards}.gauge-panel{grid-area:gauge}.hourly-panel{flex-direction:column;grid-area:hourly;display:flex;position:relative;overflow:hidden}.heatmap-panel{grid-area:heat}.load-panel{grid-area:load}.gauge,.chart-fill{flex:1;width:100%;height:100%;min-height:0}.gauge path{fill:none;stroke-width:14px}.gauge-bad{stroke:var(--heat-bad)}.gauge-warn{stroke:#f2c14e}.gauge-good{stroke:var(--heat-good)}.gauge-needle{stroke:var(--text);stroke-width:2.5px;stroke-linecap:round}.gauge-hub{fill:var(--text)}.gauge-value{fill:var(--text);font-size:24px;font-weight:800}.gauge-value.good{fill:var(--good)}.gauge-value.bad{fill:var(--bad)}.heatmap{flex:1;gap:2px;min-height:0;display:grid}.heatmap-hour,.heatmap-hour-btn{color:var(--muted);text-align:center;font-size:10px}.heatmap-hour-btn{cursor:pointer;background:0 0;border:none;border-radius:3px;width:100%;padding:1px 0;font-family:inherit;font-weight:600;transition:all .15s}.heatmap-hour-btn:hover{color:#0f172a;background:#cbd5e1;font-weight:800;transform:translateY(-1px)}.heatmap-hour.dim,.heatmap-hour-btn.dim{opacity:.4}.heatmap-route{color:var(--muted);text-align:left;white-space:nowrap;cursor:pointer;background:0 0;border:none;padding:0 8px 0 0;font-size:12px}.heatmap-route:hover{color:var(--text)}.heatmap-cell{cursor:pointer;border:none;border-radius:3px;min-height:0;padding:0}.heatmap-cell:hover{outline:2px solid var(--text);outline-offset:-2px}.faded{opacity:.25}.load-stack{flex-direction:column;flex:1;min-height:0;display:flex}.load-rows{flex:1;gap:3px;min-height:0;display:grid}.load-row{cursor:pointer;background:0 0;border:none;grid-template-columns:96px minmax(0,1fr);align-items:center;gap:8px;min-height:0;padding:0;display:grid}.load-name{color:var(--muted);text-align:left;white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.load-bar{border-radius:4px;height:70%;min-height:6px;max-height:16px;display:flex;overflow:hidden}.legend{color:var(--muted);flex-wrap:wrap;gap:2px 12px;margin:8px 0 0;padding:0;font-size:11px;list-style:none;display:flex}.legend i{vertical-align:-1px;border-radius:3px;width:10px;height:10px;margin-right:5px;display:inline-block}.live{grid-template:"band band""cards cards""map side"minmax(0,1fr)/minmax(0,1fr) 340px;gap:10px;height:100%;display:grid}.band{border-radius:12px;grid-area:band;display:flex;overflow:hidden}.band-segment{color:#fff;flex-direction:column;flex:1;align-items:center;min-width:0;padding:7px 4px;display:flex}.band-segment.dark-text{color:#1c2430}.band-segment strong{font-size:22px;line-height:1.1}.band-segment span{font-size:12px;font-weight:600}.band-segment small{opacity:.85;font-size:11px}.live .cards{grid-area:cards}.live .map-panel{grid-area:map}.live-side{flex-direction:column;grid-area:side;gap:10px;min-height:0;display:flex}.map-panel{padding:0;overflow:hidden}.fleet-map{width:100%;height:100%;min-height:200px}.bus-icon{cursor:pointer;background:0 0;border:none}.bus-icon svg{cursor:pointer;display:block;overflow:visible}.bus-label{color:#fff;white-space:nowrap;pointer-events:auto;cursor:pointer;-webkit-user-select:none;user-select:none;background:#0d1b2aeb;border:1px solid #fff3;border-radius:6px;align-items:center;padding:2.5px 7px;font-family:monospace;font-size:10px;font-weight:700;transition:transform .12s,background .12s,border-color .12s,box-shadow .12s;display:inline-flex;position:absolute;top:50%;left:100%;transform:translate(2px,-50%);box-shadow:0 2px 6px #00000059}.bus-label:hover{background:#0f2137fa;border-color:#ffffff73;transform:translate(3px,-50%)scale(1.05);box-shadow:0 3px 8px #00000073}.bus-icon.selected .bus-label{color:#0d1b2a;background:#06b6d4;border-color:#fff;box-shadow:0 2px 8px #06b6d466}.bus-icon.selected .bus-label:hover{background:#22d3ee;transform:translate(3px,-50%)scale(1.05)}.hide-labels .bus-icon:not(.selected) .bus-label{display:none}.alerts{flex:1;overflow:auto}.alert-list{flex-direction:column;gap:6px;display:flex}.alert{background:#f6f7f9;border-radius:8px}.alert-bad{background:var(--bad-bg)}.alert-warn{background:var(--warn-bg)}.alert-head{cursor:pointer;background:0 0;border:none;justify-content:space-between;width:100%;padding:7px 10px;font-size:13px;display:flex}.alert-head:disabled{cursor:default;color:var(--muted)}.alert .chips{padding:0 8px 8px}.chips{flex-wrap:wrap;gap:5px;display:flex}.chip{background:var(--panel);border:1px solid var(--line);cursor:pointer;border-radius:999px;padding:3px 8px;font-size:12px;font-weight:600}.chip span{color:var(--muted);font-weight:400}.camera-panel h3{flex-wrap:wrap;align-items:center;gap:4px 6px;display:flex}.panel-link{margin-left:auto}.tag{background:var(--accent-bg);color:var(--accent);border-radius:999px;padding:2px 6px;font-size:11px;font-weight:600}.camera-frame{aspect-ratio:16/9;background:#111;border-radius:8px;width:100%;position:relative;overflow:hidden}.camera-frame video,.camera-frame svg{width:100%;height:100%;position:absolute;inset:0}.camera-frame video{object-fit:fill}.camera-status{color:#fff;background:#0009;border-radius:6px;padding:3px 8px;font-size:12px;position:absolute;bottom:8px;left:8px}.box{fill:none;stroke-width:2.5px;vector-effect:non-scaling-stroke}.box-sitting{stroke:var(--sitting)}.box-standing{stroke:var(--standing)}.dot{vertical-align:-1px;border-radius:50%;width:10px;height:10px;margin-right:5px;display:inline-block}.dot-sitting{background:var(--sitting)}.dot-standing{background:var(--standing)}.camera-counts{flex-wrap:wrap;gap:4px 12px;margin-top:6px;font-size:12px;display:flex}.camera-counts .muted{color:var(--muted)}.camera-sent{flex-basis:100%}.chart{display:block}.chart-grid{stroke:var(--line)}.chart-label{fill:var(--muted);font-size:10px}.chart-label-strong{fill:var(--text);font-weight:600}.chart-bar-good{fill:var(--heat-good)}.chart-bar-bad{fill:var(--heat-bad)}.chart-bar-neutral{fill:#5b8fd9}.chart-breakeven{stroke:var(--text);stroke-width:1.2px;stroke-dasharray:4 3}.drawer-backdrop,.modal-backdrop{z-index:2000;background:#0f172059;position:fixed;inset:0}@keyframes slideDrawer{0%{transform:translate(100%)}to{transform:translate(0)}}.drawer{background:#fff;border-left:1px solid #e2e8f0;flex-direction:column;gap:12px;width:min(500px,100%);padding:16px;animation:.25s cubic-bezier(.16,1,.3,1) slideDrawer;display:flex;position:absolute;top:0;bottom:0;right:0;overflow-y:auto;box-shadow:-8px 0 28px #0d1b2a33}.drawer>*{flex-shrink:0}.drawer-header{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.drawer-header h2{margin:0;font-size:18px}.dot-matrix{vertical-align:middle;align-items:center;gap:4px;display:inline-flex}.dot-matrix-grid{background:#0d1b2a0f;border-radius:4px;grid-template-rows:repeat(2,4px);grid-template-columns:repeat(3,4px);justify-content:center;align-items:center;gap:2px;padding:2.5px 3.5px;display:inline-grid}.dot-matrix-grid .dot{border-radius:50%;width:4px;height:4px;margin:0;transition:background-color .2s,box-shadow .2s;display:block}.dot-matrix-grid .dot.dot-inactive{background:#cbd5e1}.dot-matrix-grid .dot.dot-active.dot-green{background:#10b981;box-shadow:0 0 3px #10b98199}.dot-matrix-grid .dot.dot-active.dot-amber{background:#f59e0b;box-shadow:0 0 3px #f59e0b99}.dot-matrix-grid .dot.dot-active.dot-red{background:#ef4444;box-shadow:0 0 3px #ef444499}.dot-matrix-sm .dot-matrix-grid{border-radius:3px;grid-template-rows:repeat(2,3px);grid-template-columns:repeat(3,3px);gap:1.5px;padding:2px 2.5px}.dot-matrix-sm .dot-matrix-grid .dot{width:3px;height:3px}.dot-matrix-lg .dot-matrix-grid{background:#fff;border:1px solid #e2e8f0;border-radius:8px;grid-template-rows:repeat(2,7px);grid-template-columns:repeat(3,7px);gap:3.5px;padding:5px 6px;box-shadow:0 1px 3px #0000000d}.dot-matrix-lg .dot-matrix-grid .dot{width:7px;height:7px}.tile-value-with-matrix{align-items:center;gap:8px;display:inline-flex}.drawer-title-row{align-items:center;gap:8px;display:flex}.drawer-status-pill{text-transform:uppercase;letter-spacing:.04em;border-radius:999px;padding:2px 8px;font-size:10px;font-weight:700}.drawer-status-pill.in-service{color:#166534;background:#dcfce7;border:1px solid #bbf7d0}.drawer-status-pill.idle{color:#64748b;background:#f1f5f9;border:1px solid #e2e8f0}.chassis-subtitle{color:#64748b;margin:2px 0 0;font-size:11px;font-weight:500}.bus-occupancy-highlight-card{border:1px solid var(--line);background:#fff;border-radius:14px;align-items:center;gap:14px;padding:12px 14px;display:flex;box-shadow:0 2px 8px #0000000a}.bus-matrix-col{flex-shrink:0}.bus-occ-stats{flex:1;min-width:0}.bus-occ-header{justify-content:space-between;align-items:center;margin-bottom:2px;display:flex}.bus-occ-label{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-size:10px;font-weight:700}.bus-occ-tone-pill{color:var(--text);font-size:11px;font-weight:600}.bus-occ-value-row{align-items:baseline;gap:5px;display:flex}.bus-big-num{color:var(--text);font-size:24px;font-weight:800;line-height:1.1}.bus-cap-denom{color:var(--muted);font-size:12px;font-weight:500}.bus-pct-badge{color:var(--text);margin-left:auto;font-size:14px;font-weight:800}.bus-badges-row{gap:6px;margin-top:6px;display:flex}.bus-badge{border-radius:6px;align-items:center;gap:3px;padding:2px 7px;font-size:10px;font-weight:600;display:inline-flex}.bus-badge.ramp{color:#1d4ed8;background:#eff6ff;border:1px solid #bfdbfe}.bus-badge.speed{color:#334155;background:#f8fafc;border:1px solid #e2e8f0}.icon-button{border:1px solid var(--line);background:var(--panel);cursor:pointer;border-radius:8px;width:32px;height:32px;font-size:20px;line-height:1}.drawer-chart{flex-shrink:0;height:200px}.drawer-map{flex-shrink:0;height:220px}.modal-backdrop{justify-content:center;align-items:center;display:flex}.modal-backdrop.backdrop-maximized{padding:0}.modal{background:var(--panel);border-radius:14px;width:min(640px,100% - 32px);max-height:calc(100% - 32px);padding:16px;transition:width .2s,height .2s,max-height .2s,border-radius .2s;overflow:auto}.modal.modal-maximized{box-sizing:border-box;z-index:2001;border-radius:0;flex-direction:column;margin:0;padding:18px 28px;display:flex;position:fixed;inset:0;width:100vw!important;max-width:100vw!important;height:100vh!important;max-height:100vh!important}.modal-header{-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.modal-header-actions{align-items:center;gap:6px;display:flex}.modal-maximize-btn{color:var(--muted);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;padding:4px;transition:all .15s;display:inline-flex}.modal-maximize-btn:hover{color:var(--text);background:var(--surface-hover,#f1f4f9)}.assumption-inputs{grid-template-columns:1fr 1fr;gap:12px;margin-bottom:10px;display:grid}.assumption-inputs label{flex-direction:column;gap:4px;font-size:13px;font-weight:600;display:flex}.assumption-inputs input{border:1px solid var(--line);max-width:180px;font:inherit;border-radius:8px;padding:8px 10px;font-size:16px}.assumption-inputs small{color:var(--muted);font-weight:400}.link-button{color:var(--accent);cursor:pointer;background:0 0;border:none;padding:0;font-size:13px;font-weight:600}.data-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:13px}.data-table th{border-bottom:1px solid var(--line);text-align:left;color:var(--muted);padding:6px 8px;font-size:11px;font-weight:600}.data-table td{border-bottom:1px solid var(--line);padding:7px 8px}.sources{color:var(--muted);margin:10px 0 0;padding-left:18px;font-size:12px;line-height:1.5}@media (height<=720px){.profit{padding-right:4px;overflow-y:auto}.gauge-panel,.hourly-panel{min-height:180px}.heatmap-panel,.load-panel{min-height:220px}}@media (width<=1180px){.topbar-right .pill-warning{display:none}.rail-container{width:250px;min-width:250px;max-width:250px}}.tile,.panel,.band{position:relative}.help-button{z-index:2;width:18px;height:18px;color:var(--muted);text-align:center;cursor:pointer;opacity:.55;background:#ffffffd9;border:1px solid #c9d1db;border-radius:50%;padding:0;font-size:11px;font-weight:700;line-height:16px;position:absolute;top:7px;right:7px}.help-button:hover,.help-button.open,.help-button:focus-visible{opacity:1;color:var(--accent);border-color:var(--accent)}.panel h3,.tile-label{padding-right:22px}.help-popover{z-index:3000;border:1px solid var(--line);background:var(--panel);max-height:calc(100vh - 16px);color:var(--text);border-radius:12px;padding:12px 14px;font-size:13px;line-height:1.45;position:fixed;overflow:auto;box-shadow:0 8px 24px #0f17202e}.help-popover header{justify-content:space-between;align-items:flex-start;gap:8px;margin-bottom:6px;font-size:14px;display:flex}.help-close{width:24px;height:24px;color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:6px;flex-shrink:0;padding:0;font-size:18px;line-height:1}.help-close:hover{color:var(--text);background:#f1f3f6}.help-popover p{margin:0 0 8px}.help-popover h4{color:var(--muted);margin:8px 0 4px;font-size:12px}.help-popover ul{margin:0;padding-left:18px}.help-popover li+li{margin-top:4px}.help-popover .help-note{background:var(--warn-bg);border-radius:8px;margin-top:10px;padding:6px 8px;font-size:12px}.button-primary{background:var(--accent);border-color:var(--accent);color:#fff}.button-primary:hover{border-color:var(--accent);filter:brightness(1.08)}.explain p{margin:0 0 10px;font-size:15px;line-height:1.55}.explain .explain-scope{color:var(--muted);margin-bottom:12px;font-size:12px;font-weight:600}.explain .explain-note{color:var(--muted);font-size:12px}.explain-actions{align-items:center;gap:10px;margin-top:4px;display:flex}.assumptions-dialog{flex-direction:column;flex:1;gap:8px;height:100%;min-height:0;display:flex}.dialog-subtabs{border-bottom:1px solid var(--line);flex-shrink:0;gap:8px;width:100%;padding-bottom:6px;display:flex}.dialog-tab{text-align:center;background:var(--surface-subtle,#f8fafc);font:inherit;color:var(--muted);cursor:pointer;white-space:nowrap;border:1px solid #e2e8f0;border-radius:8px;flex:1 1 0;justify-content:center;align-items:center;padding:6px 10px;font-size:12.5px;font-weight:600;transition:all .15s;display:inline-flex}.dialog-tab:hover{color:var(--text);background:var(--surface-hover,#f1f5f9);border-color:#cbd5e1}.dialog-tab.active{color:#1e3a8a;background:#eff6ff;border-color:#93c5fd;box-shadow:0 1px 3px #2563eb14}.dialog-tab-body{flex:1;min-height:0;padding-right:4px;overflow:hidden auto}.tab-intro{color:var(--muted);margin:0 0 14px;font-size:13px;line-height:1.4}.slider-control-group{flex-direction:column;gap:14px;display:flex}.slider-control-group label{flex-direction:column;gap:6px;font-size:13px;display:flex}.slider-header{justify-content:space-between;align-items:center;display:flex}.slider-header strong{font-variant-numeric:tabular-nums;color:var(--accent)}.slider-control-group input[type=range]{width:100%;accent-color:var(--accent);cursor:pointer}.slider-control-group .hint{color:var(--muted);font-size:12px}.preset-buttons{background:var(--surface-subtle,#f8fafd);border-radius:8px;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:14px;padding:8px 10px;display:flex}.preset-label{color:var(--muted);font-size:12px;font-weight:600}.button-small{padding:4px 8px;font-size:12px}.button-active{background:var(--accent);color:#fff;border-color:var(--accent)}.button-secondary{background:var(--surface,#fff);border:1px solid var(--line);color:var(--text)}.button-secondary:hover{background:var(--surface-hover,#f1f4f9)}.dialog-actions-bar{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-top:4px;padding-top:8px;display:flex}.action-buttons-left{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.dialog-actions-bar .button{padding:5px 12px;font-size:11.5px}.apply-button{box-shadow:0 1px 3px #0000001f}.action-status{align-items:center;gap:8px;display:flex}.status-badge{border-radius:6px;padding:3px 8px;font-size:12px;font-weight:600}.status-badge.success{color:#137333;background:#e6f4ea}.status-badge.error{color:#c5221f;background:#fce8e6}.status-badge.info{color:#1a73e8;background:#e8f0fe}.reset-button{margin-left:6px}.fleet-size-compact-bar{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;padding:10px 16px;display:flex}.fleet-compact-left{align-items:center;gap:10px;display:flex}.fleet-badge-icon{font-size:18px;line-height:1}.fleet-compact-title{color:#0f172a;font-size:13px;font-weight:800}.fleet-stepper{background:#fff;border:1px solid #cbd5e1;border-radius:8px;align-items:center;display:inline-flex;overflow:hidden;box-shadow:0 1px 3px #0000000a}.stepper-btn{color:#334155;cursor:pointer;background:#f1f5f9;border:none;justify-content:center;align-items:center;width:28px;height:28px;font-size:14px;font-weight:800;transition:all .15s;display:flex}.stepper-btn:hover:not(:disabled){color:#0f172a;background:#e2e8f0}.fleet-stepper input{text-align:center;color:#0284c7;background:#fff;border:none;border-left:1px solid #e2e8f0;border-right:1px solid #e2e8f0;width:44px;height:28px;padding:0 2px;font-size:13px;font-weight:800}.fleet-stepper input:focus{outline:none}.stepper-unit{color:#64748b;background:#fff;padding:0 8px;font-size:11px;font-weight:600}.fleet-hint-pill{color:#64748b;background:#edf2f7;border-radius:6px;padding:2px 8px;font-size:10.5px;font-weight:600}.fleet-compact-right{align-items:center;gap:8px;display:flex}.quick-label{color:#64748b;font-size:11px;font-weight:600}.fleet-quick-chips{align-items:center;gap:6px;display:flex}.quick-chip{color:#334155;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:6px;padding:4px 10px;font-size:11px;font-weight:700;transition:all .15s}.quick-chip:hover{color:#1d4ed8;background:#f8faff;border-color:#93c5fd}.quick-chip.active{color:#fff;background:#0284c7;border-color:#0369a1;box-shadow:0 1px 4px #0284c740}.modal:has(.assumptions-dialog){box-sizing:border-box;flex-direction:column;width:min(1380px,100vw - 32px);max-width:1420px;height:min(95vh,920px);max-height:calc(100vh - 24px);padding:14px 20px 12px;display:flex;overflow:hidden}.modal:has(.assumptions-dialog) .modal-header{border-bottom:1px solid #f1f5f9;margin-bottom:8px;padding-bottom:6px}.modal:has(.assumptions-dialog) .modal-header h2{margin:0;font-size:16px;font-weight:800}.modal:has(.assumptions-dialog) .assumptions-dialog{flex-direction:column;flex:1;height:100%;min-height:0;display:flex}.modal:has(.assumptions-dialog) .dialog-tab-body{flex-direction:column;flex:1;min-height:0;padding-right:4px;display:flex;overflow-y:auto}.modal:has(.assumptions-dialog) .tab-pane{flex-direction:column;flex:1;min-height:0;display:flex}.modal.modal-maximized .assumptions-dialog{flex-direction:column;flex:1;height:100%;min-height:0;display:flex}.modal.modal-maximized .dialog-tab-body{flex:1;min-height:0;padding-right:6px;overflow-y:auto}.modal.modal-maximized .ramales-table-container{max-height:calc(100vh - 360px)}.ramales-overview-card{background:var(--surface-subtle,#f8fafd);border:1px solid var(--line);border-radius:10px;margin-bottom:12px;padding:12px 14px}.ramales-overview-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.ramales-fleet-badge{border:1px solid var(--line);background:#fff;border-radius:8px;flex-direction:column;align-items:flex-end;padding:6px 12px;display:flex}.ramales-fleet-badge span{color:var(--muted);text-transform:uppercase;letter-spacing:.5px;font-size:11px}.ramales-fleet-badge strong{color:var(--accent);font-size:16px}.ramales-table-container{border:1px solid var(--line);background:#fff;border-radius:8px;max-height:280px;margin-bottom:14px;overflow-y:auto}.ramales-table{width:100%}.ramales-table th{z-index:1;background:#f1f4f9;position:sticky;top:0}.ramal-code-cell{white-space:nowrap}.route-tag{color:#1a73e8;background:#e8f0fe;border-radius:4px;padding:2px 6px;font-family:monospace;font-size:12px;font-weight:700;display:inline-block}.ramal-input{border:1px solid var(--line);font:inherit;box-sizing:border-box;border-radius:6px;padding:4px 8px;font-size:13px}.ramal-name-input{width:100%}.ramal-fare-input{text-align:right;font-variant-numeric:tabular-nums;width:75px}.stepper-control{border:1px solid var(--line);background:#fff;border-radius:6px;align-items:center;display:inline-flex;overflow:hidden}.stepper-btn{background:var(--surface-hover,#f1f4f9);width:26px;height:26px;color:var(--text);cursor:pointer;border:none;justify-content:center;align-items:center;font-size:14px;font-weight:700;transition:background .15s;display:flex}.stepper-btn:hover:not(:disabled){background:#e2e7f0}.stepper-btn:disabled{opacity:.35;cursor:not-allowed}.stepper-input{border:none;border-left:1px solid var(--line);border-right:1px solid var(--line);text-align:center;width:36px;height:26px;color:var(--accent);-moz-appearance:textfield;padding:0;font-size:13px;font-weight:700}.stepper-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.stepper-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.ramal-remove-btn{width:24px;height:24px;color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:4px;justify-content:center;align-items:center;font-size:13px;transition:all .15s;display:inline-flex}.ramal-remove-btn:hover{color:#dc2626;background:#fee2e2;border-color:#fca5a5}.add-ramal-card{background:var(--surface-subtle,#f8fafd);border:1px dashed var(--line);border-radius:8px;margin-bottom:12px;padding:10px 14px}.add-ramal-card h4{color:var(--text);margin:0 0 8px;font-size:12px}.add-ramal-fields{flex-wrap:wrap;align-items:flex-end;gap:10px;display:flex}.add-ramal-fields label{color:var(--muted);flex-direction:column;gap:4px;font-size:11px;font-weight:600;display:flex}.add-ramal-fields input{border:1px solid var(--line);font:inherit;border-radius:6px;padding:5px 8px;font-size:12px}.add-ramal-fields input[placeholder*="Ej. R142"]{width:85px}.add-ramal-fields input[placeholder*="Ej. Ramal"]{width:210px}.add-ramal-fields input[type=number]{width:65px}.ramales-footer-actions{justify-content:flex-end;display:flex}.metrics-ribbon{background:#fff;border:1px solid #e2e8f0;border-radius:12px;flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:8px 18px;display:flex;box-shadow:0 1px 3px #00000008}.ribbon-metrics-group{align-items:center;gap:16px;display:flex}.ribbon-metric{flex-direction:column;gap:2px;display:flex}.ribbon-label{text-transform:uppercase;letter-spacing:.06em;color:#94a3b8;font-size:10px;font-weight:800}.ribbon-val-row{align-items:center;gap:8px;display:flex}.ribbon-main-text{color:#0f172a;font-size:14px;font-weight:800}.ribbon-chip-blue{color:#2563eb;background:#eff6ff;border:1px solid #bfdbfe;border-radius:999px;padding:2px 7px;font-size:11px;font-weight:700}.ribbon-bold-val{color:#0f172a;font-size:14px;font-weight:800}.ribbon-sub-text{color:#64748b;font-size:11px;font-weight:500}.ribbon-revenue-val{color:#059669;font-family:JetBrains Mono,monospace;font-size:15px;font-weight:800}.ribbon-separator{background:#e2e8f0;width:1px;height:24px}.ribbon-scenarios{align-items:center;gap:8px;display:flex}.ribbon-scenarios-label{color:#64748b;font-size:11px;font-weight:600}.scenario-btn{color:#334155;cursor:pointer;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:5px 12px;font-size:11px;font-weight:600;transition:all .15s}.scenario-btn:hover{background:#f1f5f9}.scenario-btn.active{color:#fff;background:#0d1b2a;border-color:#0d1b2a;box-shadow:0 1px 3px #0d1b2a33}.rail-container{box-sizing:border-box;background:#fff;border-right:1px solid #e2e8f0;flex-direction:column;flex-shrink:0;width:275px;min-width:275px;max-width:275px;height:100%;min-height:0;display:flex;overflow:hidden;box-shadow:1px 0 3px #00000005}.rail-header{background:#fff;border-bottom:1px solid #f1f5f9;flex-shrink:0;justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.rail-title{color:#0f172a;margin:0;font-size:13px;font-weight:800}.rail-sub{color:#64748b;margin:2px 0 0;font-size:11px}.rail-add-btn{color:#334155;cursor:pointer;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:6px;padding:4px 8px;font-size:11px;font-weight:700;transition:all .15s}.rail-add-btn:hover{background:#e2e8f0}.rail-cards-scroll{flex-direction:column;flex:1 1 0;gap:6px;min-height:0;padding:8px 10px;display:flex;overflow:hidden auto}.rail-card{cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:10px;flex-shrink:0;padding:8px 10px;transition:all .15s;box-shadow:0 1px 2px #00000005}.rail-card:hover{background:#f8fafc;border-color:#cbd5e1}.rail-card.active{background:#eff6ff;border-color:#3b82f6;box-shadow:0 2px 8px #3b82f61f}.rail-card-top{justify-content:space-between;align-items:center;margin-bottom:5px;display:flex}.rail-card-badge-row{align-items:center;gap:6px;min-width:0;display:flex}.rail-card-name{color:#0f172a;white-space:nowrap;text-overflow:ellipsis;max-width:135px;font-size:12px;font-weight:700;overflow:hidden}.rail-card-fare{color:#475569;font-family:JetBrains Mono,monospace;font-size:11px;font-weight:700}.rail-card-bottom{color:#64748b;justify-content:space-between;align-items:center;font-size:11px;display:flex}.rail-card-buses{align-items:center;gap:4px;display:inline-flex}.rail-card-buses strong{color:#0f172a;font-weight:700}.mini-bus-svg{color:#94a3b8;width:14px;height:14px}.rail-card-matrix-val{align-items:center;gap:5px;display:flex}.pct-number{font-family:JetBrains Mono,monospace;font-size:11px;font-weight:700}.pct-number.tone-green{color:#059669}.pct-number.tone-amber{color:#d97706}.pct-number.tone-red{color:#dc2626}.rail-card-val-profit{color:#64748b;font-family:JetBrains Mono,monospace;font-size:11px;font-weight:700}.rail-card-val-profit.good{color:#059669}.rail-card-val-profit.bad{color:#dc2626}.rail-period-section{background:#f8fafc;border-top:1px solid #e2e8f0;flex-shrink:0;padding:8px 12px}.rail-period-title{text-transform:uppercase;letter-spacing:.05em;color:#94a3b8;margin-bottom:5px;font-size:10px;font-weight:800;display:block}.segmented-horizontal{background:#e2e8f0;border-radius:8px;gap:2px;padding:2px;display:flex}.segmented-horizontal button{color:#64748b;cursor:pointer;text-align:center;white-space:nowrap;background:0 0;border:none;border-radius:6px;flex:1;padding:5px 4px;font-size:11px;font-weight:600;transition:all .15s}.segmented-horizontal button:hover{color:#0f172a}.segmented-horizontal button.on{color:#0f172a;background:#fff;font-weight:700;box-shadow:0 1px 3px #0000001a}.rail-footer{color:#64748b;background:#f1f5f9;border-top:1px solid #e2e8f0;flex-shrink:0;justify-content:space-between;align-items:center;padding:8px 14px;font-size:11px;display:flex}.rail-footer strong{color:#0f172a;font-weight:700}.route-badge-pill.express{color:#fff;background:#0d9488}.route-badge-pill.purple{color:#fff;background:#7e22ce}.route-badge-pill.indigo{color:#fff;background:#4338ca}.live-command-center{flex-direction:column;width:100%;height:100%;min-height:0;display:flex}.map-stage-container{background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;flex-direction:column;height:100%;min-height:0;display:flex;position:relative;overflow:hidden;box-shadow:0 1px 4px #00000005}.bunching-radar-container{z-index:1000;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffffff7;border:1px solid #cbd5e1;border-radius:12px;flex-direction:column;width:min(680px,100% - 130px);max-width:700px;transition:all .25s cubic-bezier(.16,1,.3,1);display:flex;position:absolute;top:10px;left:54px;overflow:hidden;box-shadow:0 10px 28px -4px #0f172a29,0 2px 8px #0000000f;container:bunching-panel/inline-size}.bunching-radar-container.is-maximized{z-index:1010;border-radius:12px;inset:10px;box-shadow:0 20px 60px #0f172a47,0 4px 16px #00000014;width:calc(100% - 20px)!important;max-width:none!important;height:calc(100% - 20px)!important;max-height:none!important}.bunching-fullscreen-stage{background:#f8fafc;border:1px solid #cbd5e1;border-radius:12px;flex-direction:column;width:100%;height:100%;min-height:0;display:flex;position:relative;overflow:hidden}.bunching-radar-container.is-fullscreen-view{width:100%!important;max-width:none!important;height:100%!important;max-height:none!important;box-shadow:none!important;z-index:1!important;border:none!important;border-radius:12px!important;position:relative!important;inset:0!important}.bunching-radar-container.is-fullscreen-view .bunching-body{flex-direction:column;flex:1 1 0;height:100%;min-height:0;padding:12px 18px 14px;display:flex;overflow:hidden}.bunching-radar-container.is-fullscreen-view .bunching-svg-wrap{flex:1 1 0;height:100%;min-height:0;max-height:none}.bunching-radar-container.is-fullscreen-view .network-svg-wrap{flex:1 1 0;justify-content:center;align-items:center;min-height:0;display:flex}.bunching-radar-container.is-fullscreen-view .network-bunching-svg{width:100%;height:100%}.bunching-radar-container.is-collapsed{padding:0;top:10px;left:54px;box-shadow:0 4px 14px #0f172a1f;border-radius:20px!important;width:max-content!important;max-width:calc(100% - 130px)!important;height:auto!important;max-height:42px!important;bottom:auto!important;right:auto!important}.bunching-header-bar{cursor:pointer;-webkit-user-select:none;user-select:none;background:#fff;border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;gap:12px;padding:8px 14px;display:flex}.bunching-radar-container.is-collapsed .bunching-header-bar{background:0 0;border-bottom:none;gap:10px;padding:5px 12px}.bunching-header-left{align-items:center;gap:8px;min-width:0;display:flex;overflow:hidden}.bunching-title{color:#0f172a;white-space:nowrap;flex-shrink:0;font-size:12px;font-weight:800}.bunching-head-stats{color:#64748b;white-space:nowrap;align-items:baseline;gap:12px;min-width:0;font-size:11px;display:flex;overflow:hidden}.bunching-head-stat{flex-shrink:0}.bunching-head-stat--long{text-overflow:ellipsis;flex-shrink:1;min-width:0;overflow:hidden}.bunching-head-stat strong{color:#0f172a;font-weight:800}.bunching-head-stat strong.is-warn{color:#b45309}.bunching-head-stat strong.is-bad{color:#b91c1c}.bunching-head-stat-place{color:#475569}.bunching-header-right{z-index:2;flex-shrink:0;align-items:center;gap:6px;display:flex;position:relative}.bunching-badge{white-space:nowrap;letter-spacing:.02em;border-radius:6px;padding:2.5px 8px;font-size:10px;font-weight:800}.bunching-badge.badge-bad{color:#b91c1c;background:#fef2f2;border:1px solid #fca5a5}.bunching-badge.badge-warn{color:#b45309;background:#fffbeb;border:1px solid #fcd34d}.bunching-badge-extra{color:#b45309;font-weight:700}.bunching-badge.badge-info{color:#0284c7;background:#f0f9ff;border:1px solid #bae6fd}.bunching-badge.badge-good{color:#16a34a;background:#f0fdf4;border:1px solid #bbf7d0}.bunching-action-btn{color:#334155;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:6px;justify-content:center;align-items:center;padding:3px 6px;font-size:11.5px;line-height:1;transition:all .15s;display:inline-flex;box-shadow:0 1px 2px #0000000a}.bunching-action-btn:hover{color:#0f172a;background:#f1f5f9;border-color:#94a3b8}.bunching-toggle-btn{color:#334155;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:6px;justify-content:center;align-items:center;padding:3px 6px;font-size:10px;transition:all .15s;display:inline-flex;box-shadow:0 1px 2px #0000000a}.bunching-toggle-btn:hover{color:#0f172a;background:#f1f5f9;border-color:#94a3b8}.bunching-body{background:#f8fafc;flex-direction:column;gap:8px;padding:8px 14px 10px;display:flex}.bunching-radar-container.is-maximized .bunching-body{flex:1;gap:12px;padding:12px 18px 14px;overflow:hidden}.bunching-controls-row{flex-wrap:wrap;flex-shrink:0;align-items:center;gap:10px;display:flex}.bunching-segmented{background:#fff;border:1px solid #cbd5e1;border-radius:6px;display:inline-flex;overflow:hidden}.bunching-segment{color:#334155;cursor:pointer;background:0 0;border:none;border-left:1px solid #e2e8f0;padding:4px 10px;font-size:11px;font-weight:700;line-height:1.2}.bunching-segment:first-child{border-left:none}.bunching-segment:hover{color:#0f172a;background:#f1f5f9}.bunching-segment.active{color:#fff;background:#0284c7}.bunching-segment:focus-visible,.bunching-layers-btn:focus-visible,.bunching-action-btn:focus-visible{outline-offset:1px;outline:2px solid #0284c7}.bunching-layers-menu{position:relative}.bunching-layers-btn{color:#334155;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:6px;padding:4px 10px;font-size:11px;font-weight:700;line-height:1.2}.bunching-layers-btn:hover,.bunching-layers-btn.is-open{background:#f1f5f9;border-color:#94a3b8}.bunching-layers-count{color:#64748b;font-weight:600}.bunching-layers-popover{z-index:20;background:#fff;border:1px solid #cbd5e1;border-radius:8px;flex-direction:column;gap:2px;min-width:190px;padding:6px;display:flex;position:absolute;top:calc(100% + 4px);left:0;box-shadow:0 8px 20px #0f172a1f}.bunching-layer-option{color:#1e293b;cursor:pointer;border-radius:4px;align-items:center;gap:8px;padding:4px 6px;font-size:11.5px;display:flex}.bunching-layer-option:hover{background:#f1f5f9}.bunching-layer-option input{accent-color:#0284c7;margin:0}.bunching-row-stats{color:#64748b;flex-wrap:wrap;flex:1;align-items:center;gap:14px;min-width:0;font-size:11px;display:flex}.bunching-row-stats strong{color:#0f172a;font-weight:800}.bunching-row-hint{margin-left:auto;font-size:10.5px}@container bunching-panel (width<=640px){.bunching-head-stat--long,.bunching-row-hint,.bunching-badge-detail,.bunching-badge-extra{display:none}.bunching-header-bar{flex-wrap:wrap;row-gap:6px}}.bunching-advisory-bar{background:#fff;border:1px solid #e2e8f0;border-radius:8px;flex-shrink:0;padding:8px 12px;font-size:11px;line-height:1.45}.advisory-text.text-amber{color:#92400e}.advisory-text.text-emerald{color:#166534}.bunching-pair-chip{color:#dc2626;cursor:pointer;background:#fef2f2;border:1px solid #fecaca;border-radius:4px;align-items:center;margin:1px 3px;padding:1px 6px;font-family:monospace;font-size:10px;font-weight:700;display:inline-flex}.bunching-pair-chip:hover{background:#fee2e2;border-color:#ef4444}.network-svg-wrap{background:#fff;border:1px solid #e2e8f0;border-radius:8px;width:100%;padding:6px 4px 2px;position:relative;overflow:hidden;box-shadow:inset 0 1px 3px #00000005}.bunching-radar-container.is-maximized .network-svg-wrap{flex:1;justify-content:center;align-items:center;min-height:0;padding:12px 10px;display:flex}.network-bunching-svg{-webkit-user-select:none;user-select:none;width:100%;height:auto;display:block}.network-bunching-svg.is-panning{cursor:grabbing!important}.bunching-zoom-toolbar{-webkit-backdrop-filter:blur(8px);z-index:10;-webkit-user-select:none;user-select:none;background:#fffffff0;border:1px solid #cbd5e1;border-radius:8px;align-items:center;gap:4px;padding:3px 6px;display:flex;position:absolute;bottom:10px;right:12px;box-shadow:0 4px 14px #0f172a1f}.bunching-zoom-btn{color:#334155;cursor:pointer;background:#f8fafc;border:1px solid #0000;border-radius:5px;justify-content:center;align-items:center;min-width:24px;height:24px;padding:0 5px;font-size:13px;font-weight:700;line-height:1;transition:all .15s;display:inline-flex}.bunching-zoom-btn:hover{color:#0f172a;background:#e2e8f0;border-color:#cbd5e1}.bunching-zoom-btn:active{background:#cbd5e1;transform:scale(.96)}.bunching-zoom-badge{font-variant-numeric:tabular-nums;color:#0284c7;background:#f0f9ff;border-color:#bae6fd;font-size:11px;font-weight:800}.bunching-zoom-badge:hover{color:#0369a1;background:#e0f2fe}.bunching-pan-hint{color:#64748b;white-space:nowrap;margin-left:4px;padding:0 4px;font-size:10px;font-weight:600}.bunching-radar-container.is-maximized .network-bunching-svg{width:100%;height:100%;max-height:100%}.svg-line-label{fill:#64748b;text-transform:uppercase;letter-spacing:.02em;font-family:inherit;font-size:8px;font-weight:800}.label-line-x{fill:#dc2626}.label-line-y{fill:#0284c7}.label-line-z{fill:#ca8a04}.svg-station-number{fill:#1e293b;font-family:monospace;font-size:8px;font-weight:800}.svg-station-number.number-shared{fill:#166534;font-size:9px;font-weight:900}.svg-station-name{fill:#64748b;pointer-events:none;font-size:6.5px;font-weight:700}.svg-stop-label{letter-spacing:-.01em;pointer-events:none;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.svg-feeder-label{letter-spacing:-.01em;-webkit-user-select:none;user-select:none;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.svg-bus-token{transition:transform .8s cubic-bezier(.16,1,.3,1)}.svg-bus-token:hover{filter:drop-shadow(0 2px 6px #0006)}.svg-stop-wait-badge{cursor:pointer;transition:transform .18s cubic-bezier(.16,1,.3,1),filter .18s}.svg-stop-wait-badge:hover{filter:drop-shadow(0 2px 8px #00000047)!important}.svg-interstop-segment{-webkit-user-select:none;user-select:none;cursor:default;transition:all .2s}.svg-stop-node{cursor:pointer;transition:all .15s}.svg-stop-node:hover circle{filter:drop-shadow(0 0 5px #0284c7)}.svg-stop-hud{-webkit-user-select:none;user-select:none;pointer-events:none;animation:.2s cubic-bezier(.16,1,.3,1) fadeInHud}@keyframes fadeInHud{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.corridor-track-container{align-items:center;height:64px;margin:14px 10px 10px;display:flex;position:relative}.corridor-track-line{background:#cbd5e1;border-radius:3px;height:6px;position:absolute;left:0;right:0;overflow:hidden}.corridor-track-progress{background:linear-gradient(90deg,#1d4ed8 0%,#0284c7 40%,#0d9488 75%,#059669 100%);width:100%;height:100%}.corridor-landmarks-layer{pointer-events:none;position:absolute;inset:0}.corridor-landmark-tick{pointer-events:auto;flex-direction:column;align-items:center;display:flex;position:absolute;top:50%;transform:translate(-50%,-50%)}.landmark-pin-line{background:#64748b;border-radius:1px;width:2px;height:14px}.landmark-name{color:#334155;white-space:nowrap;font-size:9.5px;font-weight:800;line-height:1;position:absolute;top:14px}.landmark-sub{color:#94a3b8;white-space:nowrap;font-size:8px;line-height:1;position:absolute;top:25px}.corridor-headways-layer{pointer-events:none;position:absolute;inset:0}.headway-callout{pointer-events:auto;cursor:help;z-index:10;position:absolute;top:-16px;transform:translate(-50%)}.headway-value{font-variant-numeric:tabular-nums;white-space:nowrap;border-radius:4px;padding:1.5px 5px;font-size:9px;font-weight:800;box-shadow:0 1px 3px #00000026}.headway-callout.bunched .headway-value{color:#fff;background:#dc2626;border:1px solid #b91c1c;animation:1.5s ease-in-out infinite bunching-flash}@keyframes bunching-flash{0%{transform:scale(1)}50%{transform:scale(1.1);box-shadow:0 0 8px #dc262699}to{transform:scale(1)}}.headway-callout.gap .headway-value{color:#0369a1;background:#f0f9ff;border:1px solid #7dd3fc}.headway-callout.regular .headway-value{color:#15803d;background:#fff;border:1px solid #86efac}.corridor-buses-layer{pointer-events:none;position:absolute;inset:0}.corridor-bus-node{pointer-events:auto;cursor:pointer;z-index:20;transition:transform .15s;position:absolute;top:-8px;transform:translate(-50%,-50%)}.corridor-bus-node:hover{z-index:30;transform:translate(-50%,-50%)scale(1.15)}.corridor-bus-node.is-selected .bus-node-bubble{color:#0d1b2a;background:#06b6d4;border-color:#fff;box-shadow:0 0 12px #06b6d499}.bus-node-bubble{color:#fff;white-space:nowrap;background:#0f172af2;border:1.5px solid #ffffff4d;border-radius:6px;align-items:center;gap:4px;padding:2px 5px;font-family:monospace;display:inline-flex;box-shadow:0 2px 6px #00000059}.bus-node-icon{font-size:9px;line-height:1}.bus-node-plate{letter-spacing:-.01em;font-size:9.5px;font-weight:800}.bus-node-pointer{border-top:5px solid #0f172af2;border-left:4px solid #0000;border-right:4px solid #0000;width:0;height:0;margin:0 auto}.corridor-empty-msg{color:#94a3b8;justify-content:center;align-items:center;font-size:11px;font-style:italic;display:flex;position:absolute;inset:0}.bunching-advisory-bar{background:#f1f5f9;border-left:3px solid #2563eb;border-radius:6px;padding:6px 10px;font-size:10.5px;line-height:1.35}.advisory-text.text-amber{color:#9a3412;font-weight:500}.advisory-text.text-amber strong{color:#c2410c}.advisory-text.text-sky{color:#0369a1;font-weight:500}.advisory-text.text-emerald{color:#166534;font-weight:500}.map-floating-tools{z-index:1000;flex-direction:column;gap:6px;display:flex;position:absolute;top:12px;right:14px}.tool-btn{color:#475569;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:10px;justify-content:center;align-items:center;width:34px;height:34px;transition:all .15s;display:flex;box-shadow:0 2px 6px #0000000f}.tool-btn:hover{color:#0f172a;background:#f8fafc}.tool-btn.tool-btn-active{color:#fff;background:#0284c7;border-color:#0369a1;box-shadow:0 2px 8px #0284c766}.tool-btn.tool-btn-active:hover{color:#fff;background:#0369a1}.ctp-stop-marker-wrap{background:0 0;border:none}.stop-pin{color:#fff;cursor:pointer;-webkit-user-select:none;user-select:none;border:2px solid #fff;border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;font-size:9px;font-weight:800;transition:transform .15s,box-shadow .15s;display:flex;box-shadow:0 2px 5px #00000059}.stop-pin:hover{z-index:1000;transform:scale(1.4);box-shadow:0 4px 10px #00000080}.stop-pin.hub-pin{background:#dc2626;border:2.5px solid #fff;border-radius:50%;width:28px;height:28px;font-size:14px;position:relative;box-shadow:0 3px 12px #dc26268c}.hub-pulse{pointer-events:none;border:2px solid #ef4444;border-radius:50%;animation:2s ease-out infinite hub-pulse-anim;position:absolute;inset:-6px}@keyframes hub-pulse-anim{0%{opacity:1;transform:scale(.85)}to{opacity:0;transform:scale(1.6)}}.stop-pin.origin-pin{background:#fff;border:2.5px solid #16a34a;width:22px;height:22px;font-size:11px}.stop-pin.terminus-pin{background:#fff;border:2.5px solid #ca8a04;width:22px;height:22px;font-size:11px}.stop-popup-card{min-width:190px;padding:4px 2px;font-family:inherit}.stop-popup-header{border-bottom:1px solid #f1f5f9;align-items:center;gap:6px;margin-bottom:5px;padding-bottom:4px;display:flex}.stop-popup-tag{color:#fff;letter-spacing:.02em;border-radius:4px;padding:2px 6px;font-size:9.5px;font-weight:800}.stop-popup-title{color:#0f172a;margin:0 0 6px;font-size:13px;font-weight:800;line-height:1.25}.stop-popup-details{color:#64748b;flex-direction:column;gap:3px;font-size:11px;line-height:1.35;display:flex}.stop-popup-hub-badge{color:#991b1b;background:#fee2e2;border:1px solid #fecaca;border-radius:4px;margin-top:5px;padding:3px 6px;font-size:10.5px;font-weight:700;display:inline-block}.map-embed-wrapper{flex:1;min-height:0;position:relative}.map-bottom-strip{z-index:500;background:#fff;border-top:1px solid #e2e8f0;flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:8px 14px;font-size:11px;display:flex}.bottom-strip-left{align-items:center;gap:10px;display:flex;overflow-x:auto}.bottom-strip-label{color:#94a3b8;letter-spacing:.06em;white-space:nowrap;font-size:10px;font-weight:800}.bottom-strip-chips{align-items:center;gap:6px;display:flex}.bottom-bus-chip{color:#334155;cursor:pointer;white-space:nowrap;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;align-items:center;gap:6px;padding:4px 10px;font-size:11px;font-weight:600;transition:all .15s;display:flex}.bottom-bus-chip:hover{background:#f1f5f9}.bottom-bus-chip.selected{color:#1e3a8a;background:#eff6ff;border-color:#93c5fd;box-shadow:0 1px 3px #2563eb26}.chip-plate{color:#0f172a;font-weight:800}.chip-pax{color:#64748b;font-size:11px}.bottom-strip-headway{white-space:nowrap;color:#64748b;align-items:center;gap:6px;display:flex}.bottom-strip-headway strong{color:#0f172a;font-weight:700}.telemetry-panel{background:#fff;border:1px solid #e2e8f0;border-radius:14px;flex-direction:column;width:360px;height:100%;min-height:0;display:flex;overflow:hidden;box-shadow:0 1px 4px #00000005}.telemetry-header{background:#f8fafc;border-bottom:1px solid #f1f5f9;flex-shrink:0;justify-content:space-between;align-items:center;padding:12px 14px;display:flex}.telemetry-header-left{align-items:center;gap:10px;display:flex}.route-badge-box{color:#fff;background:#0d1b2a;border-radius:8px;justify-content:center;align-items:center;width:30px;height:30px;font-family:JetBrains Mono,monospace;font-size:12px;font-weight:800;display:flex}.telemetry-title-row{align-items:center;gap:6px;display:flex}.telemetry-plate{color:#0f172a;margin:0;font-family:JetBrains Mono,monospace;font-size:14px;font-weight:800}.telemetry-status-pill{color:#166534;background:#dcfce7;border-radius:999px;padding:2px 7px;font-size:10px;font-weight:700}.telemetry-chassis{color:#64748b;margin:2px 0 0;font-size:11px;font-weight:500}.telemetry-close-btn{color:#94a3b8;cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;width:24px;height:24px;font-size:18px;display:flex}.telemetry-close-btn:hover{color:#0f172a;background:#e2e8f0}.telemetry-scroll-body{flex-direction:column;flex:1;gap:10px;padding:12px;display:flex;overflow-y:auto}.telemetry-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:12px}.telemetry-card.compact{padding:10px 12px}.telemetry-card-header{justify-content:space-between;align-items:center;display:flex}.telemetry-card-title{text-transform:uppercase;letter-spacing:.05em;color:#94a3b8;font-size:10px;font-weight:800}.telemetry-card-title.block-title{margin-bottom:6px;display:block}.telemetry-tone-pill{font-size:11px;font-weight:700}.telemetry-tone-pill.tone-green{color:#059669}.telemetry-tone-pill.tone-amber{color:#d97706}.telemetry-tone-pill.tone-red{color:#dc2626}.telemetry-aforo-row{justify-content:space-between;align-items:center;margin-top:8px;display:flex}.telemetry-matrix-wrapper{flex-shrink:0}.telemetry-aforo-numbers{align-items:baseline;gap:4px;display:flex}.telemetry-big-count{color:#0f172a;font-family:JetBrains Mono,monospace;font-size:24px;font-weight:800}.telemetry-cap-total{color:#64748b;font-size:12px;font-weight:600}.telemetry-aforo-percent{color:#0f172a;font-size:16px;font-weight:800}.telemetry-progress-track{background:#e2e8f0;border-radius:999px;width:100%;height:6px;margin-top:10px;overflow:hidden}.telemetry-progress-fill{border-radius:999px;height:100%}.telemetry-progress-fill.bg-green{background:#10b981}.telemetry-progress-fill.bg-amber{background:#f59e0b}.telemetry-progress-fill.bg-red{background:#ef4444}.telemetry-seats-breakdown{color:#64748b;justify-content:space-between;align-items:center;margin-top:8px;font-size:11px;display:flex}.telemetry-grid-2{grid-template-columns:1fr 1fr;gap:8px;display:grid}.telemetry-metric-bold{color:#0f172a;margin-top:4px;font-family:JetBrains Mono,monospace;font-size:14px;font-weight:800;display:block}.telemetry-chip-ramp{color:#2563eb;align-items:center;gap:4px;margin-top:4px;font-size:11px;font-weight:700;display:inline-flex}.telemetry-sub-hint{color:#94a3b8;font-family:JetBrains Mono,monospace;font-size:10px}.telemetry-chart-bars{justify-content:space-between;align-items:flex-end;gap:8px;height:90px;padding:16px 4px 0;display:flex}.bar-col{flex-direction:column;flex:1;align-items:center;display:flex;position:relative}.bar-fill{border-radius:4px 4px 0 0;width:100%;transition:height .3s}.bar-fill.blue-light{background:#93c5fd}.bar-fill.blue-mid{background:#60a5fa}.bar-fill.blue-deep{background:#3b82f6}.bar-fill.red-peak{background:#ef4444}.bar-fill.amber-mid{background:#f59e0b}.peak-tag{color:#fff;letter-spacing:.05em;background:#dc2626;border-radius:3px;padding:1px 4px;font-size:8px;font-weight:800;position:absolute;top:-16px}.bar-time{color:#94a3b8;margin-top:4px;font-family:JetBrains Mono,monospace;font-size:9px}.bar-time.highlight{color:#0f172a;font-weight:800}.telemetry-peak-summary{text-align:center;color:#64748b;margin:10px 0 0;font-size:11px}.telemetry-peak-summary strong{color:#0f172a}.telemetry-bunching-section{flex-direction:column;gap:4px;display:flex}.bunching-list{flex-direction:column;gap:6px;display:flex}.bunching-item{background:#fff;border:1px solid #e2e8f0;border-radius:8px;justify-content:space-between;align-items:center;padding:8px 10px;transition:all .15s;display:flex}.bunching-item:hover{background:#f8fafc;border-color:#cbd5e1}.bunching-plate{color:#0f172a;font-family:JetBrains Mono,monospace;font-size:12px;font-weight:700}.bunching-spacing{color:#94a3b8;font-size:10px;display:block}.bunching-stat-right{flex-direction:column;align-items:flex-end;gap:2px;display:flex}.bunching-load{font-size:11px;font-weight:700}.bunching-load.text-red{color:#dc2626}.bunching-load.text-green{color:#059669}.telemetry-cam-toggle{color:#2563eb;cursor:pointer;background:0 0;border:none;font-size:11px;font-weight:700}.telemetry-footer-actions{background:#f8fafc;border-top:1px solid #e2e8f0;flex-shrink:0;gap:8px;padding:10px 12px;display:flex}.action-btn-dark{color:#fff;cursor:pointer;background:#0d1b2a;border:none;border-radius:10px;flex:1;padding:8px 12px;font-size:12px;font-weight:700;transition:background .15s}.action-btn-dark:hover{background:#1e293b}.action-btn-outline{color:#334155;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:10px;padding:8px 14px;font-size:12px;font-weight:700;transition:all .15s}.action-btn-outline:hover{background:#f1f5f9}.button-accent-glow{color:#fff;background:linear-gradient(135deg,#0284c7,#2563eb);border:1px solid #38bdf866;align-items:center;gap:6px;font-weight:700;transition:all .15s;display:inline-flex;box-shadow:0 2px 8px #2563eb59}.button-accent-glow:hover{background:linear-gradient(135deg,#0369a1,#1d4ed8);transform:translateY(-1px);box-shadow:0 4px 12px #2563eb80}.button-presentation{color:#f8fafc;background:#1e293b;border:1px solid #475569;align-items:center;gap:6px;font-weight:700;display:inline-flex}.button-presentation:hover{color:#fff;background:#334155;border-color:#64748b}.app-video-modal{background:#fff;border-radius:16px;flex-direction:column;height:min(900px,94vh);max-height:94vh;padding:18px 22px;display:flex;box-shadow:0 25px 60px #00000059;width:min(1360px,95vw)!important}.app-video-title-col{flex-direction:column;gap:4px;display:flex}.app-video-subheading{color:#0f172a;letter-spacing:-.01em;margin:0;font-size:18px;font-weight:800}.app-video-body{flex-direction:column;flex:1;width:100%;min-height:0;margin-top:12px;display:flex}.app-video-player-wrapper{flex-direction:column;flex:1;gap:12px;width:100%;min-height:0;display:flex}.app-video-element{object-fit:contain;background:#090e17;border-radius:14px;flex:1;width:100%;min-height:0;box-shadow:0 6px 24px #00000040}.app-video-floating-bar{background:#f1f5f9;border-radius:10px;flex-shrink:0;align-items:center;gap:10px;padding:8px 14px;display:flex}.app-video-ctrl-btn{color:#1e293b;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:8px;padding:5px 12px;font-size:12px;font-weight:700;transition:all .15s}.app-video-ctrl-btn:hover{background:#e2e8f0}.app-video-duration-tag{color:#64748b;margin-left:auto;font-size:11px;font-weight:600}.app-video-guide-col{flex-direction:column;gap:10px;display:flex}.guide-col-title{color:#0f172a;margin:0;font-size:15px;font-weight:800}.guide-col-intro{color:#64748b;margin:0;font-size:12px;line-height:1.4}.guide-steps-list{flex-direction:column;gap:8px;display:flex}.guide-step-card{cursor:pointer;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;gap:10px;padding:10px 12px;transition:all .15s;display:flex}.guide-step-card:hover{background:#f1f5f9;border-color:#cbd5e1}.guide-step-card.active{background:#eff6ff;border-color:#93c5fd;box-shadow:0 1px 4px #2563eb1a}.step-num-badge{color:#fff;background:#0d1b2a;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;font-size:11px;font-weight:800;display:flex}.guide-step-card.active .step-num-badge{background:#2563eb}.step-content{flex-direction:column;gap:2px;display:flex}.step-title{color:#0f172a;font-size:12px;font-weight:700}.step-desc{color:#475569;margin:0;font-size:11px;line-height:1.35}.app-video-benefit-banner{color:#065f46;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:10px;flex-direction:column;gap:3px;margin-top:auto;padding:10px 12px;font-size:11px;line-height:1.4;display:flex}.presentation-overlay{z-index:5000;color:#0f172a;background:#f1f5f9;flex-direction:column;font-family:Plus Jakarta Sans,system-ui,-apple-system,sans-serif;display:flex;position:fixed;inset:0;overflow:hidden}.pres-top-bar{background:#fff;border-bottom:1px solid #e2e8f0;flex-shrink:0;justify-content:space-between;align-items:center;padding:12px 28px;display:flex;box-shadow:0 1px 3px #0000000a}.pres-top-left{align-items:center;gap:12px;display:flex}.pres-divider{color:#cbd5e1}.pres-meeting-label{color:#475569;font-size:13px;font-weight:600}.pres-top-right{align-items:center;gap:12px;display:flex}.pres-timer-pill{color:#059669;cursor:pointer;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:999px;align-items:center;gap:6px;padding:6px 14px;font-size:13px;font-weight:700;transition:all .15s;display:inline-flex}.pres-timer-pill.timer-warning{color:#dc2626;background:#fef2f2;border-color:#fca5a5;animation:1s infinite pulse-ring}.timer-status{opacity:.8;text-transform:uppercase;font-size:10px}.pres-notes-toggle{color:#334155;cursor:pointer;background:#f8fafc;border:1px solid #cbd5e1;border-radius:8px;padding:6px 14px;font-size:12px;font-weight:700;transition:all .15s}.pres-notes-toggle.active,.pres-notes-toggle:hover{color:#0f172a;background:#e2e8f0}.pres-close-btn{color:#64748b;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:6px 14px;font-size:12px;font-weight:700;transition:all .15s}.pres-close-btn:hover{color:#dc2626;background:#fee2e2;border-color:#fca5a5}.pres-slide-stage{background:radial-gradient(circle at 50% 30%,#fff 0%,#f1f5f9 100%);flex:1;justify-content:center;align-items:center;min-height:0;padding:20px 32px;display:flex;position:relative;overflow:hidden}.pres-slide-container{background:#fff;border:1px solid #e2e8f0;border-radius:20px;flex-direction:column;gap:18px;width:100%;max-width:1140px;max-height:94%;padding:28px 36px;display:flex;overflow-y:auto;box-shadow:0 20px 40px -15px #0f172a14,0 0 1px #0f172a0f}.slide-header-box{border-bottom:1px solid #f1f5f9;flex-direction:column;gap:4px;padding-bottom:12px;display:flex}.slide-header-meta{align-items:center;gap:10px;display:flex}.slide-badge-pill{letter-spacing:.06em;text-transform:uppercase;color:#1d4ed8;background:#eff6ff;border:1px solid #bfdbfe;border-radius:999px;padding:3px 10px;font-size:11px;font-weight:800}.slide-duration-pill{color:#64748b;font-size:11px;font-weight:600}.slide-title{color:#0f172a;letter-spacing:-.02em;margin:0;font-size:26px;font-weight:800}.slide-subtitle{color:#475569;margin:0;font-size:14px}.slide-body-content{flex:1;min-height:0}.slide-action-bar{justify-content:flex-end;padding-top:8px;display:flex}.slide-action-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#1d4ed8,#2563eb);border:none;border-radius:10px;align-items:center;gap:8px;padding:10px 20px;font-size:13px;font-weight:700;transition:all .15s;display:inline-flex;box-shadow:0 4px 12px #2563eb40}.slide-action-btn:hover{transform:translateY(-1px);box-shadow:0 6px 16px #2563eb59}.pres-split-layout{grid-template-columns:1.1fr .9fr;align-items:center;gap:24px;display:grid}.pres-cover-metrics-grid{grid-template-columns:repeat(3,1fr);gap:12px;margin:12px 0;display:grid}.pres-kpi-card{text-align:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;flex-direction:column;gap:4px;padding:16px 14px;display:flex}.pres-kpi-card.highlight-card{background:#eff6ff;border-color:#bfdbfe}.pres-kpi-num{color:#0f172a;font-family:JetBrains Mono,monospace;font-size:28px;font-weight:800;line-height:1.1}.pres-kpi-label{color:#1e293b;font-size:12px;font-weight:700}.pres-kpi-sub{color:#64748b;font-size:10.5px}.pres-photo-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:16px;flex-direction:column;display:flex;position:relative;overflow:hidden;box-shadow:0 8px 24px #0000000f}.pres-photo-card img{object-fit:cover;width:100%;height:220px;display:block}.pres-photo-badge{background:#fff;border-top:1px solid #e2e8f0;justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.pres-photo-tag{color:#1d4ed8;align-items:center;gap:6px;font-size:12px;font-weight:700;display:flex}.pres-photo-route{color:#64748b;font-size:11px;font-weight:600}.pres-grid-2{grid-template-columns:1fr 1fr;gap:18px;display:grid}.pres-grid-3{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.pres-grid-4{grid-template-columns:repeat(4,1fr);gap:14px;display:grid}.pres-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;flex-direction:column;gap:10px;padding:18px 20px;display:flex}.pres-card.border-red{background:snow;border-left:4px solid #ef4444}.pres-card.border-amber{background:#fffdfa;border-left:4px solid #f59e0b}.pres-card.border-blue{background:#f8faff;border-left:4px solid #2563eb}.pres-card.border-emerald{background:#fafffc;border-left:4px solid #10b981}.pres-badge{text-transform:uppercase;border-radius:999px;width:fit-content;padding:3px 10px;font-size:11px;font-weight:800}.pres-badge.red{color:#b91c1c;background:#fee2e2}.pres-badge.amber{color:#b45309;background:#fef3c7}.pres-badge.blue{color:#1d4ed8;background:#dbeafe}.pres-badge.emerald{color:#047857;background:#d1fae5}.pres-text{color:#334155;margin:0;font-size:13.5px;line-height:1.5}.pres-loss-highlight{background:#fff;border:1px solid #e2e8f0;border-radius:10px;justify-content:space-between;align-items:center;padding:10px 14px;font-size:13px;display:flex}.pres-bullets{color:#334155;flex-direction:column;gap:6px;margin:0;padding-left:18px;font-size:13px;line-height:1.5;display:flex}.pres-bullets li strong{color:#0f172a}.pres-feature-box{background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;flex-direction:column;gap:8px;padding:18px;transition:all .15s;display:flex}.pres-feature-box:hover{background:#fff;border-color:#cbd5e1;box-shadow:0 4px 12px #0000000a}.pres-feature-box.highlight-box{background:#f0fdfa;border-color:#99f6e4}.feature-icon{font-size:26px}.pres-feature-box h4{color:#0f172a;margin:0;font-size:15px;font-weight:800}.pres-feature-box p{color:#475569;flex:1;margin:0;font-size:12.5px;line-height:1.45}.feature-metric{border-top:1px solid #e2e8f0;padding-top:8px;font-size:12px;font-weight:700}.feature-metric.text-emerald{color:#059669}.feature-metric.text-blue{color:#2563eb}.feature-metric.text-cyan{color:#0284c7}.pres-app-layout{grid-template-columns:1.1fr .9fr;align-items:center;gap:22px;display:grid}.pres-app-left{flex-direction:column;gap:12px;display:flex}.pres-app-benefit-item{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;gap:12px;padding:12px 14px;display:flex}.benefit-icon{flex-shrink:0;font-size:22px}.pres-app-benefit-item strong{color:#0f172a;margin-bottom:2px;font-size:13.5px;display:block}.pres-app-benefit-item p{color:#475569;margin:0;font-size:12px;line-height:1.4}.pres-phone-frame{background:#fff;border:2px solid #e2e8f0;border-radius:18px;flex-direction:column;gap:10px;padding:12px;display:flex;box-shadow:0 12px 32px -8px #0f172a1f}.pres-phone-img-wrap{background:#fff;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden}.pres-phone-img-wrap img{object-fit:cover;width:100%;height:200px;display:block}.app-video-preview-card{color:#fff;cursor:pointer;background:linear-gradient(135deg,#1d4ed8,#2563eb);border-radius:12px;justify-content:center;align-items:center;gap:10px;height:60px;padding:0 16px;transition:all .2s;display:flex;box-shadow:0 4px 12px #2563eb4d}.app-video-preview-card:hover{transform:translateY(-2px);box-shadow:0 6px 16px #2563eb66}.play-icon-circle{color:#1d4ed8;background:#fff;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;padding-left:2px;font-size:14px;font-weight:800;display:flex}.pres-spec-box{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;flex-direction:column;gap:6px;padding:16px;display:flex}.pres-spec-icon{font-size:24px}.pres-spec-box h4{color:#0f172a;margin:0;font-size:14px;font-weight:800}.pres-spec-box p{color:#475569;margin:0;font-size:12px;line-height:1.4}.pres-pilot-banner{color:#166534;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:12px;justify-content:space-between;align-items:center;padding:14px 18px;display:flex}.pres-timeline-grid{grid-template-columns:repeat(4,1fr);gap:14px;display:grid}.timeline-col{background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;flex-direction:column;gap:6px;padding:16px 14px;display:flex}.timeline-col.highlight-timeline{background:#f0fdf4;border-color:#86efac}.timeline-week-pill{color:#334155;background:#e2e8f0;border-radius:6px;width:fit-content;padding:2px 8px;font-size:11px;font-weight:800}.timeline-week-pill.pill-emerald{color:#fff;background:#10b981}.timeline-col h5{color:#0f172a;margin:0;font-size:14px;font-weight:800}.timeline-col p{color:#475569;margin:0;font-size:12px;line-height:1.4}.pres-close-layout{justify-content:center;padding:8px 0;display:flex}.pres-close-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;flex-direction:column;gap:16px;width:100%;max-width:760px;padding:24px 30px;display:flex;box-shadow:0 10px 25px -5px #0000000d}.pres-close-card h3{color:#0f172a;margin:0;font-size:18px;font-weight:800}.pres-close-points{flex-direction:column;gap:10px;display:flex}.close-point{align-items:flex-start;gap:12px;display:flex}.close-check{color:#fff;background:#10b981;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;font-size:12px;font-weight:800;display:flex}.close-point strong{color:#0f172a;font-size:13.5px;display:block}.close-point p{color:#475569;margin:2px 0 0;font-size:12px}.pres-actions-row{gap:12px;margin-top:8px;display:flex}.pres-btn-primary{color:#fff;cursor:pointer;background:linear-gradient(135deg,#1d4ed8,#2563eb);border:none;border-radius:10px;flex:1;padding:12px 18px;font-size:13.5px;font-weight:700;transition:all .15s;box-shadow:0 4px 12px #2563eb4d}.pres-btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 16px #2563eb66}.pres-btn-secondary{color:#1e293b;cursor:pointer;background:#f8fafc;border:1px solid #cbd5e1;border-radius:10px;padding:12px 20px;font-size:13.5px;font-weight:700;transition:all .15s}.pres-btn-secondary:hover{background:#e2e8f0}.pres-notes-sidebar{z-index:10;background:#fff;border:1px solid #cbd5e1;border-radius:16px;flex-direction:column;gap:12px;width:320px;padding:18px;animation:.2s ease-out slideDrawer;display:flex;position:absolute;top:20px;bottom:20px;right:32px;box-shadow:-8px 0 24px #0000001a}.notes-header{border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;padding-bottom:8px;display:flex}.notes-title{color:#1d4ed8;font-size:13px;font-weight:700}.notes-close{color:#64748b;cursor:pointer;background:0 0;border:none;font-size:18px}.notes-list{color:#334155;flex-direction:column;flex:1;gap:10px;margin:0;padding-left:18px;font-size:12px;line-height:1.5;display:flex;overflow-y:auto}.notes-tip{color:#92400e;background:#fef3c7;border:1px solid #fde68a;border-radius:8px;padding:8px 10px;font-size:11px}.notes-tip span{font-weight:700}.pres-bottom-bar{background:#fff;border-top:1px solid #e2e8f0;flex-shrink:0;justify-content:space-between;align-items:center;padding:10px 28px;display:flex}.pres-progress-dots{align-items:center;gap:8px;display:flex}.progress-dot{cursor:pointer;background:#e2e8f0;border:none;border-radius:50%;width:10px;height:10px;transition:all .15s}.progress-dot:hover{background:#94a3b8}.progress-dot.active{background:#2563eb;transform:scale(1.25);box-shadow:0 0 6px #2563eb66}.pres-nav-buttons{align-items:center;gap:12px;display:flex}.nav-arrow-btn{color:#1e293b;cursor:pointer;background:#f8fafc;border:1px solid #cbd5e1;border-radius:8px;padding:6px 14px;font-size:12px;font-weight:700;transition:all .15s}.nav-arrow-btn:hover:not(:disabled){background:#e2e8f0}.nav-arrow-btn:disabled{opacity:.4;cursor:not-allowed}.nav-arrow-btn.primary{color:#fff;background:#2563eb;border-color:#1d4ed8}.nav-arrow-btn.primary:hover:not(:disabled){background:#1d4ed8}.slide-counter{color:#475569;font-size:13px;font-weight:700}.pres-shortcuts-hint{color:#64748b;font-size:11px}.pres-shortcuts-hint kbd{color:#334155;background:#f1f5f9;border:1px solid #cbd5e1;border-radius:4px;padding:2px 5px;font-family:monospace}.simulator-studio{background:var(--bg);box-sizing:border-box;flex-direction:column;flex:1;gap:12px;min-height:0;padding:12px 14px;display:flex;overflow-y:auto}.sim-header{border:1px solid var(--line);background:#fff;border-radius:8px;flex-shrink:0;justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.sim-badge{text-transform:uppercase;letter-spacing:.5px;color:var(--accent);background:var(--accent-bg);border-radius:4px;width:fit-content;margin-bottom:4px;padding:2px 8px;font-size:10px;font-weight:700}.sim-title-group h2{color:var(--text);margin:0 0 2px;font-size:16px;font-weight:700}.sim-subtitle{color:var(--muted);margin:0;font-size:12px}.sim-actions-group{flex-direction:column;align-items:flex-end;gap:6px;display:flex}.sim-presets-bar{align-items:center;gap:6px;display:flex}.preset-pill-label{color:var(--muted);font-size:11px;font-weight:600}.sim-preset-btn{border:1px solid var(--line);cursor:pointer;color:var(--text);background:#f8fafc;border-radius:6px;padding:4px 10px;font-size:11px;font-weight:600;transition:all .15s}.sim-preset-btn:hover{background:#f1f5f9}.sim-preset-btn.active{background:var(--accent);color:#fff;border-color:var(--accent)}.sim-cta-bar{align-items:center;gap:8px;display:flex}.sim-apply-btn{font-weight:700}.sim-success-pill{color:var(--good);font-size:11px;font-weight:700}.sim-error-pill{color:var(--bad);font-size:11px;font-weight:700}.sim-workspace{flex:1;grid-template-columns:1.15fr .85fr;gap:12px;min-height:0;display:grid}.sim-analytics-col{flex-direction:column;gap:12px;display:flex;overflow-y:auto}.sim-controls-col{flex-direction:column;display:flex;overflow-y:auto}.sim-card{border:1px solid var(--line);background:#fff;border-radius:8px;padding:14px;box-shadow:0 1px 3px #00000005}.sim-card-header{justify-content:space-between;align-items:flex-start;margin-bottom:10px;display:flex}.sim-card-tag{color:var(--accent);text-transform:uppercase;letter-spacing:.5px;font-size:10px;font-weight:700}.sim-card-header h3{margin:2px 0 0;font-size:14px;font-weight:700}.sim-status-pill{border-radius:12px;padding:3px 8px;font-size:11px;font-weight:700}.sim-pulse-metrics{flex-direction:column;gap:12px;display:flex}.sim-gauge-metric{border:1px solid var(--line);background:#f8fafc;border-radius:6px;padding:10px 12px}.sim-metric-val{color:var(--text);align-items:baseline;gap:6px;font-size:26px;font-weight:800;display:flex}.sim-unit{color:var(--muted);font-size:12px;font-weight:500}.sim-gauge-bar-wrapper{background:#e2e8f0;border-radius:4px;height:8px;margin:8px 0 4px;position:relative}.sim-gauge-bar-fill{border-radius:4px;height:100%;transition:width .2s}.sim-gauge-target-line{background:#1c2430;border-radius:2px;width:3px;position:absolute;top:-3px;bottom:-3px}.sim-gauge-legend{color:var(--muted);justify-content:space-between;font-size:10px;display:flex}.sim-legend-target{color:var(--text);font-weight:700}.sim-kpi-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.sim-mini-kpi{border:1px solid var(--line);background:#f8fafc;border-radius:6px;flex-direction:column;padding:8px 10px;display:flex}.kpi-label{color:var(--muted);font-size:11px}.kpi-num{color:var(--text);margin:2px 0;font-size:16px;font-weight:800}.kpi-sub{color:var(--muted);font-size:10px}.sim-kpi-positive .kpi-num{color:var(--good)}.sim-kpi-negative .kpi-num,.sim-kpi-warning .kpi-num{color:var(--bad)}.sim-chart-container{width:100%;height:160px}.sim-hourly-svg{width:100%;height:100%}.sim-legend-row{gap:10px;font-size:11px;display:flex}.legend-box{border-radius:2px;width:10px;height:10px;display:inline-block}.box-blue{background:#1f6feb}.box-amber{background:#0f766e}.box-red-zone{background:#ef444466}.sim-chart-caption{color:var(--muted);margin-top:6px;font-size:11px;font-style:italic}.sim-hub-comparison{grid-template-columns:1fr 1fr;gap:10px;display:grid}.hub-model-box{border:1px solid var(--line);background:#f8fafc;border-radius:6px;padding:10px}.hub-box-highlight{border-color:var(--accent);background:var(--accent-bg)}.hub-label{text-transform:uppercase;color:var(--muted);font-size:10px;font-weight:700}.hub-model-box strong{margin:2px 0 4px;font-size:13px;display:block}.hub-model-box p{color:var(--muted);margin:0 0 8px;font-size:11px;line-height:1.35}.hub-pills{flex-direction:column;gap:3px;font-size:11px;display:flex}.pill-savings{color:var(--good);font-weight:700}.sim-controls-card{border:1px solid var(--line);box-sizing:border-box;background:#fff;border-radius:8px;flex-direction:column;height:100%;padding:14px;display:flex}.sim-pillar-tabs{background:#f1f5f9;border-radius:6px;grid-template-columns:repeat(4,1fr);gap:4px;margin-bottom:12px;padding:3px;display:grid}.pillar-tab{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:6px 4px;font-size:11px;font-weight:600}.pillar-tab.active{color:var(--text);background:#fff;box-shadow:0 1px 2px #0000000f}.pillar-body h4{margin:0 0 2px;font-size:13px;font-weight:700}.pillar-desc{color:var(--muted);margin:0 0 12px;font-size:11px}.sim-control-group{margin-bottom:12px}.control-label-row{justify-content:space-between;margin-bottom:4px;font-size:11px;display:flex}.control-label-row strong{font-size:12px}.sim-control-group input[type=range]{cursor:pointer;width:100%}.control-hint{color:var(--muted);margin-top:3px;font-size:10px}.sim-group-highlight{border:1px solid var(--line);background:#f8fafc;border-radius:6px;padding:8px 10px}.sim-ramales-list{flex-direction:column;gap:6px;max-height:420px;display:flex;overflow-y:auto}.sim-ramal-row{border:1px solid var(--line);background:#f8fafc;border-radius:6px;justify-content:space-between;align-items:center;padding:6px 8px;display:flex}.ramal-info{align-items:baseline;gap:6px;display:flex}.ramal-id{color:var(--muted);font-family:monospace;font-size:10px;font-weight:700}.ramal-name{font-size:11px}.ramal-fare{color:var(--muted);font-size:10px}.ramal-stepper{align-items:center;gap:6px;display:flex}.stepper-btn{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:4px;justify-content:center;align-items:center;width:22px;height:22px;font-size:13px;font-weight:700;display:flex}.stepper-count{text-align:center;min-width:18px;font-size:12px;font-weight:700}.sim-total-fleet-badge{background:var(--accent-bg);color:var(--accent);border-radius:4px;padding:2px 6px;font-size:11px}.sim-cost-summary-box{border:1px solid var(--line);background:#f8fafc;border-radius:6px;margin-top:10px;padding:8px 10px}.cost-row{border-bottom:1px solid var(--line);justify-content:space-between;padding:4px 0;font-size:11px;display:flex}.cost-row:last-child{border-bottom:none}.sim-badge-row{align-items:center;gap:8px;display:flex}.sim-concession-badge{color:#475569;border:1px solid var(--line);background:#f1f5f9;border-radius:4px;padding:2px 8px;font-size:11px;font-weight:600}.sim-subnav-bar{border:1px solid var(--line);background:#fff;border-radius:8px;justify-content:space-between;align-items:center;margin-bottom:12px;padding:8px 16px;display:flex}.sim-subnav-tabs{gap:8px;display:flex}.sim-subnav-tab{color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;padding:6px 14px;font-size:12px;font-weight:600;transition:all .15s}.sim-subnav-tab:hover{color:var(--text);background:#f8fafc}.sim-subnav-tab.active{background:var(--accent-bg);color:var(--accent);border-color:#0f766e40}.sim-subnav-quickstat{color:var(--muted);align-items:center;gap:6px;font-size:11px;display:flex}.sim-subnav-quickstat strong{color:var(--text);font-variant-numeric:tabular-nums}.stat-separator{color:var(--line);margin:0 4px}.sim-route-promo-card{background:#f0fdf4;border:1px solid #bbf7d0;padding:12px 16px}.route-promo-content{justify-content:space-between;align-items:center;gap:16px;display:flex}.route-promo-content h4{color:#166534;margin:2px 0 4px;font-size:13px}.route-promo-content p{color:#15803d;margin:0;font-size:11px;line-height:1.4}.sim-planner-workspace{grid-template-columns:1.15fr .85fr;gap:14px;height:calc(100vh - 200px);min-height:580px;display:grid}.sim-map-card{border:1px solid var(--line);background:#fff;border-radius:8px;flex-direction:column;display:flex;overflow:hidden;box-shadow:0 1px 3px #0000000a}.sim-map-toolbar{border-bottom:1px solid var(--line);background:#fff;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;display:flex}.toolbar-left,.toolbar-right{align-items:center;gap:8px;display:flex}.route-select-label{color:var(--muted);align-items:center;gap:8px;font-size:11px;font-weight:600;display:flex}.sim-route-dropdown{border:1px solid var(--line);color:var(--text);cursor:pointer;background:#f8fafc;border-radius:6px;outline:none;max-width:320px;padding:5px 10px;font-size:12px;font-weight:600}.drawing-mode-banner{color:#92400e;background:#fef3c7;border-bottom:1px solid #fde68a;justify-content:space-between;align-items:center;padding:6px 14px;font-size:11px;display:flex}.drawing-stat strong{font-variant-numeric:tabular-nums;color:#78350f}.map-wrapper-element{flex:1;min-height:400px;position:relative}.route-planner-map-container{width:100%;height:100%}.cursor-crosshair .leaflet-container{cursor:crosshair!important}.sim-route-analysis-col{flex-direction:column;gap:12px;display:flex;overflow-y:auto}.route-spec-card{padding:14px}.route-tariff-pill{color:#334155;border:1px solid var(--line);font-variant-numeric:tabular-nums;background:#f1f5f9;border-radius:4px;padding:2px 8px;font-size:11px;font-weight:700}.route-quick-grid{grid-template-columns:repeat(4,1fr);gap:8px;margin:12px 0;display:grid}.route-grid-item{border:1px solid var(--line);background:#f8fafc;border-radius:6px;flex-direction:column;padding:8px 10px;display:flex}.item-label{color:var(--muted);margin-bottom:2px;font-size:10px}.item-val{color:var(--text);font-variant-numeric:tabular-nums;font-size:15px;font-weight:700}.item-sub{color:var(--muted);margin-top:2px;font-size:9px}.ramal-stepper-row{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;align-items:center;padding-top:10px;font-size:11px;display:flex}.corridor-comparison-card{padding:14px}.comparison-scenarios-grid{grid-template-columns:1fr 1fr;gap:10px;margin-top:12px;display:grid}.scenario-card{border:1px solid var(--line);background:#f8fafc;border-radius:6px;padding:12px}.scenario-current{border-left:3px solid #64748b}.scenario-direct{background:#f0f9ff;border-color:#bae6fd #bae6fd #bae6fd #0284c7;border-left-style:solid;border-left-width:3px}.scenario-badge{text-transform:uppercase;color:#64748b;letter-spacing:.05em;margin-bottom:4px;font-size:9px;font-weight:700;display:block}.badge-direct{color:#0284c7}.scenario-card h4{color:var(--text);margin:0 0 6px;font-size:12px}.scenario-text{color:var(--muted);margin:0 0 10px;font-size:11px;line-height:1.4}.scenario-metrics-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.scenario-metrics-list li{border-bottom:1px solid #0000000d;flex-direction:column;padding-bottom:4px;font-size:10px;display:flex}.scenario-metrics-list li:last-child{border-bottom:none}.scenario-metrics-list li span{color:var(--muted)}.scenario-metrics-list li strong{font-variant-numeric:tabular-nums;margin-top:1px;font-size:11px}.comparison-cta-box{border-top:1px solid var(--line);flex-direction:column;gap:8px;margin-top:12px;padding-top:12px;display:flex}.ctp-explanation{color:#475569;border:1px solid var(--line);background:#f8fafc;border-radius:4px;padding:8px 10px;font-size:10px;line-height:1.4}.ctp-modal-btn{width:100%;padding:8px 12px;font-size:12px;font-weight:600}.trunk-info-card{padding:14px}.trunk-info-card p{color:var(--muted);margin:8px 0 14px;font-size:12px;line-height:1.5}.trunk-kpis-list{grid-template-columns:1fr 1fr;gap:8px;display:grid}.trunk-kpi{border:1px solid var(--line);background:#f8fafc;border-radius:6px;flex-direction:column;padding:8px 10px;display:flex}.trunk-kpi span{color:var(--muted);font-size:10px}.trunk-kpi strong{color:var(--text);font-variant-numeric:tabular-nums;margin-top:2px;font-size:12px}.ctp-modal-backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:9999;background:#0f172aa6;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.ctp-modal-dialog{border:1px solid var(--line);background:#fff;border-radius:10px;flex-direction:column;width:100%;max-width:640px;max-height:90vh;display:flex;overflow:hidden;box-shadow:0 20px 25px -5px #0003}.ctp-modal-header{border-bottom:1px solid var(--line);background:#f8fafc;justify-content:space-between;align-items:flex-start;padding:16px 20px;display:flex}.ctp-doc-badge{text-transform:uppercase;color:var(--accent);letter-spacing:.05em;margin-bottom:2px;font-size:9px;font-weight:800;display:block}.ctp-modal-header h3{color:var(--text);margin:0 0 2px;font-size:16px}.ctp-modal-header p{color:var(--muted);margin:0;font-size:11px}.ctp-close-btn{color:var(--muted);cursor:pointer;background:0 0;border:none;padding:4px;font-size:16px}.ctp-modal-body{color:#334155;flex-direction:column;gap:14px;padding:20px;font-size:12px;line-height:1.5;display:flex;overflow-y:auto}.ctp-doc-meta{border:1px solid var(--line);background:#f8fafc;border-radius:6px;grid-template-columns:1fr 1fr;gap:6px;padding:10px 12px;font-size:11px;display:grid}.ctp-section h4{color:var(--text);margin:0 0 6px;font-size:12px;font-weight:700}.ctp-section p{margin:0 0 6px}.ctp-section ul{margin:4px 0 0 18px;padding:0}.ctp-stats-table{border:1px solid var(--line);border-radius:6px;overflow:hidden}.ctp-stats-table .table-row{border-bottom:1px solid var(--line);justify-content:space-between;padding:6px 12px;font-size:11px;display:flex}.ctp-stats-table .table-row:last-child{border-bottom:none}.ctp-stats-table .table-row strong{font-variant-numeric:tabular-nums;color:var(--text)}.ctp-modal-footer{border-top:1px solid var(--line);background:#f8fafc;justify-content:flex-end;gap:10px;padding:12px 20px;display:flex}.ctp-route-manager{background:var(--bg);box-sizing:border-box;flex-direction:column;width:100%;height:100%;display:flex}.manager-top-ribbon{border:1px solid var(--line);background:#fff;border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:12px;padding:12px 18px;display:flex;box-shadow:0 1px 3px #00000008}.ribbon-brand-col{flex-direction:column;gap:3px;display:flex}.ribbon-workflow-steps{gap:6px;margin-bottom:2px;display:flex}.step-pill{border-radius:4px;padding:2px 8px;font-size:10px;font-weight:700}.step-done{color:#15803d;background:#dcfce7;border:1px solid #bbf7d0}.ribbon-brand-col h3{color:var(--text);margin:0;font-size:15px;font-weight:700}.ribbon-sub{color:var(--muted);font-size:11px}.ribbon-kpi-col{align-items:center;gap:12px;display:flex}.ribbon-kpi-badge{border:1px solid var(--line);background:#f8fafc;border-radius:6px;flex-direction:column;padding:6px 12px;display:flex}.ribbon-kpi-badge .kpi-tag{text-transform:uppercase;color:var(--muted);letter-spacing:.03em;font-size:9px;font-weight:700}.ribbon-kpi-badge strong{color:var(--text);font-variant-numeric:tabular-nums;margin-top:1px;font-size:14px}.ribbon-actions-col{align-items:center;gap:8px;display:flex}.manager-notification-banner{color:#065f46;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:6px;margin-bottom:12px;padding:8px 16px;font-size:12px;font-weight:600;animation:.2s ease-in-out fadeIn}.manager-fullwidth-workspace{border:1px solid var(--line);background:#f8fafc;border-radius:8px;flex-direction:column;flex:1;min-height:520px;padding:12px;display:flex;overflow-y:auto}.manager-routes-list-container{flex-direction:column;width:100%;display:flex}.routes-list-header{text-transform:uppercase;color:var(--muted);letter-spacing:.04em;border-bottom:1px solid var(--line);grid-template-columns:320px 1fr 140px;align-items:center;gap:16px;margin-bottom:8px;padding:8px 14px;font-size:11px;font-weight:700;display:grid}.routes-list-header .col-timeline{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.header-legend{text-transform:none;letter-spacing:0;color:#475569;align-items:center;gap:12px;font-size:10px;font-weight:600;display:inline-flex}.legend-item{align-items:center;gap:4px;display:inline-flex}.legend-dot{border-radius:50%;width:7px;height:7px;display:inline-block}.dot-hub-red{background:#ef4444;box-shadow:0 0 0 2px #fee2e2}.dot-origin-green{background:#10b981}.dot-terminus-amber{background:#f59e0b}.routes-list-body{flex-direction:column;gap:8px;display:flex}.route-chain-card{border:1px solid var(--line);background:#fff;border-radius:8px;grid-template-columns:320px 1fr 140px;align-items:center;gap:16px;padding:10px 14px;transition:border-color .15s,box-shadow .15s;display:grid;box-shadow:0 1px 3px #00000005}.route-chain-card:hover{border-color:#94a3b8;box-shadow:0 3px 10px #0000000a}.route-meta-col{flex-direction:column;gap:6px;min-width:0;display:flex}.route-badge-row{align-items:center;gap:8px;min-width:0;display:flex}.route-code-pill{border:1px solid;border-radius:4px;flex-shrink:0;padding:2px 7px;font-family:JetBrains Mono,monospace;font-size:11px;font-weight:800}.route-title{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:700;overflow:hidden}.route-stats-row{flex-wrap:wrap;align-items:center;gap:8px;font-size:11px;display:flex}.stepper-mini{border:1px solid var(--line);background:#f8fafc;border-radius:4px;align-items:center;gap:4px;padding:2px 4px;display:inline-flex}.step-btn{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:3px;justify-content:center;align-items:center;width:18px;height:18px;font-size:12px;font-weight:700;display:flex}.step-val{text-align:center;font-variant-numeric:tabular-nums;min-width:16px;font-size:11px;font-weight:700}.step-unit{color:var(--muted);margin-right:2px;font-size:10px;font-weight:600}.route-stat-tag{color:var(--muted);background:#f1f5f9;border-radius:4px;padding:2px 6px;font-size:10px;font-weight:600}.route-timeline-col{scrollbar-width:thin;min-width:0;padding:6px 4px;overflow:auto hidden}.stop-chain-wrapper{box-sizing:border-box;align-items:flex-start;width:100%;min-width:max-content;padding:6px 0;display:flex;position:relative}.stop-chain-track-line{z-index:1;opacity:.85;border-radius:3px;height:5px;position:absolute;top:19px;left:36px;right:36px}.stop-chain-nodes-row{z-index:2;justify-content:space-between;align-items:flex-start;gap:12px;width:100%;display:flex;position:relative}.stop-chain-node-item{cursor:pointer;flex-direction:column;flex-shrink:0;align-items:center;width:72px;transition:transform .12s;display:flex}.stop-chain-node-item:hover .stop-node-box{z-index:5;transform:scale(1.18);box-shadow:0 4px 10px #0000004d}.stop-chain-node-item:hover .stop-node-label{color:var(--text);font-weight:700}.stop-node-box{color:#fff;border:2px solid #fff;border-radius:5px;flex-shrink:0;justify-content:center;align-items:center;width:26px;height:26px;font-family:JetBrains Mono,monospace;font-size:11px;font-weight:800;transition:transform .12s,box-shadow .12s;display:flex;position:relative;box-shadow:0 2px 5px #0003}.node-is-hub{outline-offset:1px;outline:2px solid #ef4444}.stop-node-number{line-height:1}.stop-indicator-dot{border:1.5px solid #fff;border-radius:50%;width:9px;height:9px;position:absolute;top:-5px;right:-5px;box-shadow:0 1px 3px #00000040}.stop-node-label{color:#475569;text-align:center;white-space:normal;word-break:normal;overflow-wrap:break-word;width:72px;margin-top:6px;font-size:9px;font-weight:600;line-height:1.15;transition:color .12s}.route-actions-col{justify-content:flex-end;align-items:center;display:flex}.edit-chain-btn{white-space:nowrap;border-radius:6px;padding:5px 12px;font-size:11px;font-weight:600}.filter-input-wrap{align-items:center;display:inline-flex;position:relative}.route-search-input{border:1px solid var(--line);color:var(--text);background:#f8fafc;border-radius:6px;min-width:190px;padding:6px 26px 6px 10px;font-size:12px}.route-search-input:focus{background:#fff;border-color:#3b82f6;outline:none}.clear-search-btn{color:var(--muted);cursor:pointer;background:0 0;border:none;padding:2px;font-size:11px;position:absolute;right:6px}.empty-routes-placeholder{text-align:center;color:var(--muted);border:1px dashed var(--line);background:#fff;border-radius:8px;padding:36px 16px;font-size:13px}.route-editor-backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:10000;background:#0f172ab3;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.route-editor-window{border:1px solid var(--line);background:#fff;border-radius:10px;flex-direction:column;width:95vw;max-width:1180px;height:88vh;display:flex;overflow:hidden;box-shadow:0 25px 50px -12px #00000040}.editor-window-header{border-bottom:1px solid var(--line);background:#f8fafc;justify-content:space-between;align-items:center;padding:14px 20px;display:flex}.editor-title-row{align-items:center;gap:12px;display:flex}.editor-route-code{border-radius:6px;padding:4px 10px;font-family:JetBrains Mono,monospace;font-size:13px;font-weight:800;box-shadow:0 2px 4px #00000026}.editor-title-row h3{color:var(--text);margin:0 0 2px;font-size:16px;font-weight:700}.editor-subtitle{color:var(--muted);margin:0;font-size:11px}.editor-close-btn{color:var(--muted);cursor:pointer;background:0 0;border:none;padding:4px 8px;font-size:18px}.editor-close-btn:hover{color:var(--text)}.editor-meta-bar{border-bottom:1px solid var(--line);background:#fff;flex-wrap:wrap;align-items:center;gap:14px;padding:10px 20px;display:flex}.meta-field{color:var(--muted);align-items:center;gap:8px;font-size:11px;font-weight:600;display:flex}.meta-input{border:1px solid var(--line);color:var(--text);background:#f8fafc;border-radius:4px;padding:5px 8px;font-size:12px;font-weight:600}.meta-input-name{min-width:260px}.meta-input-num{text-align:right;font-variant-numeric:tabular-nums;width:75px}.editor-split-workspace{flex:1;grid-template-columns:1.1fr .9fr;display:grid;overflow:hidden}.editor-stops-column{border-right:1px solid var(--line);background:#fff;flex-direction:column;display:flex;overflow:hidden}.stops-toolbar{border-bottom:1px solid var(--line);background:#f8fafc;justify-content:space-between;align-items:center;padding:10px 16px;display:flex}.stops-summary strong{color:var(--text);font-size:12px;display:block}.stops-summary span{color:var(--muted);font-size:10px}.stops-actions{gap:6px;display:flex}.gps-mode-tip{color:#92400e;background:#fef3c7;border-bottom:1px solid #fde68a;padding:6px 16px;font-size:11px}.stops-table-scroll{flex:1;overflow-y:auto}.stops-table{border-collapse:collapse;width:100%;font-size:11px}.stops-table thead th{color:var(--muted);border-bottom:1px solid var(--line);text-align:left;z-index:2;background:#f8fafc;padding:6px 8px;font-size:10px;font-weight:700;position:sticky;top:0}.stops-table tbody tr{cursor:pointer;border-bottom:1px solid #f1f5f9}.stops-table tbody tr:hover{background:#f8fafc}.stops-table tbody tr.row-selected{background:#eff6ff}.stops-table td{vertical-align:middle;padding:5px 6px}.stop-badge{color:#fff;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;font-size:10px;font-weight:800;display:inline-flex}.stop-cell-input{background:0 0;border:1px solid #0000;border-radius:3px;width:100%;padding:4px 6px;font-size:11px;font-weight:500}.stop-cell-input:focus,.stops-table tbody tr:hover .stop-cell-input{border-color:var(--line);background:#fff}.coord-input{text-align:right;font-variant-numeric:tabular-nums;font-family:JetBrains Mono,monospace;font-size:10px}.dwell-input{text-align:right;font-variant-numeric:tabular-nums}.stop-actions-cell{justify-content:center;align-items:center;gap:2px;display:flex}.stop-reorder-btn,.stop-delete-btn{color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:3px;padding:2px 4px;font-size:10px}.stop-reorder-btn:hover{color:var(--text);border-color:var(--line);background:#f1f5f9}.stop-delete-btn:hover{color:#b91c1c;background:#fee2e2;border-color:#fca5a5}.editor-map-column{background:#e2e8f0;flex-direction:column;flex:1;display:flex;position:relative}.editor-map-toolbar{border-bottom:1px solid var(--line);z-index:500;background:#fff;justify-content:space-between;align-items:center;gap:8px;padding:6px 12px;font-size:11px;display:flex}.map-toolbar-left{align-items:center;gap:8px;display:flex}.route-mode-pill{color:#0369a1;background:#e0f2fe;border:1px solid #bae6fd;border-radius:4px;padding:2px 8px;font-size:10.5px;font-weight:700}.routing-spinner{color:#d97706;font-size:10.5px;font-weight:600}.editor-map-wrapper{flex:1;width:100%;min-height:0;position:relative}.editor-leaflet-container{width:100%;height:100%}.editor-window-footer{border-top:1px solid var(--line);background:#f8fafc;justify-content:space-between;align-items:center;padding:12px 20px;display:flex}.footer-stats{color:var(--muted);gap:16px;font-size:11px;display:flex}.footer-stats strong{color:var(--text);font-variant-numeric:tabular-nums}.footer-btns{gap:8px;display:flex}.import-options-grid{grid-template-columns:1fr 1fr;gap:14px;margin-top:10px;display:grid}.import-option-card{border:1px solid var(--line);cursor:pointer;background:#f8fafc;border-radius:8px;flex-direction:column;justify-content:space-between;padding:16px;transition:all .15s;display:flex}.import-option-card:hover{border-color:var(--accent);background:#fff;box-shadow:0 4px 12px #0000000d}.import-option-card.option-featured{background:#f0f9ff;border-color:#bae6fd}.option-badge{text-transform:uppercase;color:#0284c7;letter-spacing:.04em;margin-bottom:4px;font-size:9px;font-weight:800;display:block}.import-option-card h4{color:var(--text);margin:0 0 6px;font-size:13px}.import-option-card p{color:var(--muted);margin:0 0 12px;font-size:11px;line-height:1.4}.file-upload-label{cursor:pointer;text-align:center}.tab-pane-route-manager{flex-direction:column;height:100%;min-height:520px;display:flex;padding:0!important}.hourly-chart-interactive-container{flex-direction:column;flex:1;width:100%;height:100%;min-height:0;display:flex;overflow:hidden}.hourly-chart-hint-row{flex-shrink:0;margin-bottom:4px}.hourly-chart-svg-wrap{flex:1;width:100%;height:100%;min-height:0;position:relative;overflow:hidden}.click-hint{color:var(--muted);font-size:10px;font-weight:500}.chart-bar-group:hover .chart-bar{opacity:.85;filter:brightness(1.08)}.chart-bar-selected{stroke:#0f172a;stroke-width:2px;filter:drop-shadow(0 2px 5px #0000004d)}.chart-label-bold{fill:#0f172a;font-weight:800}.hour-modal-backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:10000;background:#0f172aa6;justify-content:center;align-items:center;padding:16px;animation:.15s fadeIn;display:flex;position:fixed;inset:0}.hour-modal-window{border:1px solid var(--line);background:#fff;border-radius:12px;width:min(720px,95vw);max-height:88vh;padding:18px 20px;animation:.18s cubic-bezier(.16,1,.3,1) modalScaleUp;overflow-y:auto;box-shadow:0 25px 50px -12px #00000059}@keyframes modalScaleUp{0%{opacity:0;transform:scale(.96)translateY(8px)}to{opacity:1;transform:scale(1)translateY(0)}}.hour-modal-window .hour-detail-card{box-shadow:none;border:none;margin-top:0;padding:0}.hour-detail-card{border:1px solid var(--line);background:#fff;border-radius:8px;margin-top:10px;padding:12px 14px;animation:.15s ease-in-out fadeIn;box-shadow:0 4px 12px #0000000a}.card-border-good{border-left:4px solid #16a34a}.card-border-bad{border-left:4px solid #dc2626}.hour-detail-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;margin-bottom:10px;padding-bottom:8px;display:flex}.hour-detail-title-col{flex-direction:column;gap:2px;display:flex}.hour-detail-title{color:var(--text);flex-wrap:wrap;align-items:center;gap:8px;font-size:13px;font-weight:700;display:flex}.status-pill{border-radius:4px;padding:2px 8px;font-size:10px;font-weight:700}.status-pill.pill-good{color:#15803d;background:#dcfce7;border:1px solid #bbf7d0}.status-pill.pill-bad{color:#b91c1c;background:#fee2e2;border:1px solid #fecaca}.hour-detail-scope{color:var(--muted);font-size:11px}.hour-detail-scope-bar{flex-wrap:wrap;align-items:center;gap:8px;margin-top:4px;display:flex}.scope-lbl{color:#64748b;text-transform:uppercase;letter-spacing:.03em;font-size:10.5px;font-weight:700}.hour-route-select{color:#0f172a;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:5px;outline:none;max-width:290px;padding:3px 8px;font-size:11.5px;font-weight:600}.hour-route-select:focus{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f626}.scope-toggle-btn{color:#1d4ed8;cursor:pointer;background:#eff6ff;border:1px solid #3b82f6;border-radius:5px;padding:3px 9px;font-size:10.5px;font-weight:700;transition:all .15s}.scope-toggle-btn:hover{color:#fff;background:#3b82f6}.scope-hint-text{color:#64748b;font-size:10.5px;font-style:italic}.hour-close-btn{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:2px 6px;font-size:14px}.hour-close-btn:hover{color:var(--text);background:#f1f5f9}.hour-detail-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;margin-bottom:10px;display:grid}.hour-metric-card{border:1px solid var(--line);background:#f8fafc;border-radius:6px;flex-direction:column;gap:3px;padding:8px 10px;display:flex}.hour-metric-label{text-transform:uppercase;color:var(--muted);letter-spacing:.03em;font-size:9px;font-weight:700}.hour-metric-val{color:var(--text);font-variant-numeric:tabular-nums;font-size:16px;font-weight:800}.hour-metric-sub{color:var(--muted);font-size:10.5px}.hour-cost-line{color:#64748b;margin-top:1px;font-size:10px}.hour-metric-diff{margin-top:1px;font-size:11px;font-weight:700}.hour-detail-breakdown{border:1px solid var(--line);background:#f8fafc;border-radius:8px;margin-bottom:12px;padding:10px 12px}.breakdown-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px;display:flex}.breakdown-header-title{flex-direction:column;gap:2px;display:flex}.breakdown-header-title span{text-transform:uppercase;color:#1e293b;letter-spacing:.02em;font-size:11px;font-weight:700}.breakdown-header-title small{color:#64748b;font-size:10px;font-weight:500}.breakdown-filter-tabs{background:#e2e8f0;border-radius:6px;gap:2px;padding:2px;display:inline-flex}.breakdown-tab-btn:hover{color:#0f172a}.breakdown-tab-btn.tab-btn-bad.active{color:#991b1b;background:#fee2e2}.breakdown-tab-btn.tab-btn-good.active{color:#166534;background:#dcfce7}.breakdown-columns-bar{text-transform:uppercase;color:#64748b;letter-spacing:.03em;border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;margin-bottom:6px;padding:4px 10px;font-size:10px;font-weight:700;display:flex}.col-lbl-branch{flex:1}.col-lbl-financials{align-items:center;gap:16px;display:flex}.col-lbl-in-out{align-items:center;gap:4px;display:inline-flex}.dot-mini{border-radius:50%;width:6px;height:6px;display:inline-block}.dot-green{background:#16a34a}.dot-red{background:#dc2626}.col-lbl-margin{text-align:right;min-width:95px}.breakdown-list{flex-direction:column;gap:6px;height:234px;min-height:234px;max-height:234px;padding-right:2px;display:flex;overflow-y:auto}.breakdown-item{box-sizing:border-box;background:#fff;border:1px solid #e2e8f0;border-radius:6px;flex-shrink:0;grid-template-columns:1fr auto;align-items:center;gap:8px;min-height:42px;padding:6px 10px;font-size:12px;display:grid;box-shadow:0 1px 2px #00000005}.breakdown-empty-state{color:#64748b;text-align:center;box-sizing:border-box;background:#fff;border:1px dashed #cbd5e1;border-radius:6px;flex-direction:column;justify-content:center;align-items:center;gap:4px;height:100%;padding:16px;display:flex}.breakdown-empty-state .empty-icon{opacity:.6;font-size:24px}.breakdown-empty-state .empty-title{color:#334155;font-size:12px;font-weight:700}.breakdown-empty-state .empty-sub{color:#64748b;font-size:11px}.breakdown-item-interactive{cursor:pointer;transition:all .12s}.breakdown-item-interactive:hover{background:#eff6ff;border-color:#3b82f6;transform:translate(2px)}.breakdown-meta{align-items:center;gap:10px;min-width:0;display:flex}.breakdown-code{color:#fff;background:#0f172a;border-radius:4px;flex-shrink:0;padding:2px 6px;font-family:JetBrains Mono,monospace;font-size:10.5px;font-weight:800}.breakdown-name-col{flex-direction:column;gap:1px;min-width:0;display:flex}.breakdown-name{color:#0f172a;white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:700;overflow:hidden}.breakdown-subtext{color:#64748b;font-variant-numeric:tabular-nums;font-size:10.5px}.breakdown-fin-col{flex-shrink:0;align-items:center;gap:12px;display:flex}.breakdown-fin-amounts{font-variant-numeric:tabular-nums;color:#64748b;align-items:center;gap:4px;font-size:11px;display:flex}.fin-tag-val{align-items:baseline;gap:2px;display:inline-flex}.fin-tag-val small{opacity:.75;text-transform:uppercase;font-size:9px;font-weight:600}.fin-rev{color:#166534;font-weight:700}.fin-sep{color:#94a3b8}.fin-cost{color:#991b1b;font-weight:700}.branch-margin-pill{font-variant-numeric:tabular-nums;text-align:right;border-radius:5px;flex-direction:column;justify-content:center;align-items:flex-end;min-width:95px;padding:3px 8px;display:inline-flex}.margin-prefix{text-transform:uppercase;letter-spacing:.02em;opacity:.85;margin-bottom:1px;font-size:8.5px;font-weight:700;line-height:1}.margin-amount{font-size:11.5px;font-weight:800;line-height:1}.branch-margin-pill.margin-good{color:#15803d;background:#dcfce7;border:1px solid #bbf7d0}.branch-margin-pill.margin-bad{color:#b91c1c;background:#fee2e2;border:1px solid #fecaca}.breakdown-bar-bg{background:#e2e8f0;border-radius:2px;grid-column:1/-1;height:4px;margin-top:2px;overflow:hidden}.breakdown-bar-fill{border-radius:2px;height:100%;transition:width .25s}.breakdown-sensor-tag{color:#0369a1;background:#e0f2fe;border-radius:4px;padding:2px 6px;font-size:9px;font-weight:700}.hour-recommendation-box{border-radius:6px;align-items:flex-start;gap:8px;padding:8px 10px;font-size:11px;line-height:1.35;display:flex}.hour-recommendation-box.box-good{color:#166534;background:#f0fdf4;border:1px solid #bbf7d0}.hour-recommendation-box.box-bad{color:#991b1b;background:#fef2f2;border:1px solid #fecaca}.recommendation-icon{flex-shrink:0;font-size:14px}.recommendation-text p{opacity:.92;margin:2px 0 0;font-size:10.5px}.schedules-columns-container{flex-direction:column;flex:1;gap:10px;min-height:0;margin-top:6px;display:flex}.schedules-columns-grid{flex:1;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:14px;min-height:0;display:grid}.schedule-column{background:#fff;border:1.5px solid #e2e8f0;border-radius:12px;flex-direction:column;gap:6px;padding:10px 12px;transition:all .2s cubic-bezier(.16,1,.3,1);display:flex;box-shadow:0 1px 4px #0000000a}.schedule-column.active-schedule-card{background:linear-gradient(#fbfdff 0%,#fff 100%);border-color:#2563eb;box-shadow:0 4px 16px #2563eb1f}.col-header{border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;gap:8px;padding-bottom:6px;display:flex}.col-header-info{align-items:center;gap:8px;display:flex}.col-icon{font-size:22px;line-height:1}.col-title{color:#0f172a;margin:0;font-size:13.5px;font-weight:800;line-height:1.2}.col-sub{color:#64748b;font-size:10px;font-weight:600;display:block}.sim-select-btn{cursor:pointer;color:#475569;white-space:nowrap;background:#f8fafc;border:1px solid #cbd5e1;border-radius:6px;flex-shrink:0;padding:4px 9px;font-size:10.5px;font-weight:700;transition:all .15s}.sim-select-btn:hover{color:#0f172a;background:#f1f5f9;border-color:#94a3b8}.sim-select-btn.is-active{color:#fff;background:#2563eb;border-color:#1d4ed8;box-shadow:0 2px 6px #2563eb40}.col-section{background:#fafbfc;border:1px solid #edf2f7;border-radius:8px;flex-direction:column;gap:5px;padding:7px 10px;display:flex}.compact-section{gap:5px;padding:7px 10px}.col-dispatch-section{gap:5px;margin-top:0;padding:7px 10px}.col-section-header-compact{text-transform:uppercase;letter-spacing:.04em;color:#475569;justify-content:space-between;align-items:center;font-size:10px;font-weight:800;display:flex}.col-grid-4{grid-template-columns:repeat(4,1fr);gap:6px;display:grid}.col-grid-4 label{flex-direction:column;gap:2px;display:flex}.col-grid-4 label>span{color:#64748b;white-space:nowrap;text-overflow:ellipsis;font-size:9px;font-weight:700;overflow:hidden}.col-grid-4 input[type=time]{color:#0f172a;box-sizing:border-box;background:#fff;border:1px solid #cbd5e1;border-radius:5px;width:100%;height:28px;padding:0 4px;font-size:11px;font-weight:700}.col-grid-4 .input-with-unit{align-items:center;display:flex;position:relative}.col-grid-4 .input-with-unit input{box-sizing:border-box;background:#fff;border:1px solid #cbd5e1;border-radius:5px;width:100%;height:28px;padding:0 20px 0 5px;font-size:11px;font-weight:700}.col-grid-4 .input-with-unit span{color:#94a3b8;pointer-events:none;font-size:9px;font-weight:600;position:absolute;right:4px}.col-sliders-section{gap:6px;padding:9px 12px}.col-slider-item{flex-direction:column;gap:3px;margin-bottom:6px;display:flex}.col-slider-item:last-child{margin-bottom:0}.slider-header-compact{color:#334155;justify-content:space-between;font-size:10.5px;font-weight:600;display:flex}.slider-header-compact strong{color:#0f172a;font-size:11.5px;font-weight:800}.col-slider-item input[type=range]{cursor:pointer;height:5px;margin:2px 0 0}.compact-curve-section{background:#fafbfc;border:1px solid #edf2f7;border-radius:8px;gap:4px;padding:6px 10px}.mini-chart-header{justify-content:space-between;align-items:center;display:flex}.col-section-title{text-transform:uppercase;letter-spacing:.03em;color:#475569;font-size:9.5px;font-weight:800}.mini-chart-hint{color:#64748b;font-size:8.5px;font-weight:600}.col-mini-bars{background:#fff;border:1px solid #e2e8f0;border-radius:6px;align-items:flex-end;gap:2px;height:72px;padding:4px 2px 0;display:flex}.mini-col-slot{cursor:pointer;flex-direction:column;flex:1;align-items:center;height:100%;display:flex}.mini-col-track{background:#f1f5f9;border-radius:2px 2px 0 0;flex:1;align-items:flex-end;width:100%;display:flex;overflow:hidden}.mini-col-fill{border-radius:2px 2px 0 0;width:100%;transition:height .25s}.mini-col-fill.peak{background:linear-gradient(#0ea5e9 0%,#0284c7 100%)}.mini-col-fill.valley{background:linear-gradient(#fbbf24 0%,#d97706 100%)}.mini-col-fill.night{background:linear-gradient(#a78bfa 0%,#7c3aed 100%)}.mini-col-fill.off{background:0 0}.mini-slot-label{color:#94a3b8;margin-top:1.5px;font-size:7px;font-weight:700;line-height:1}.mini-slot-dot{color:#cbd5e1;margin-top:1px;font-size:6px;line-height:1}.col-stats-box{background:#f8fafc;border:1.5px solid #e2e8f0;border-radius:9px;flex-direction:column;flex:1;justify-content:space-between;gap:5px;margin-top:auto;padding:7px 10px;display:flex}.col-stats-box-header{text-transform:uppercase;letter-spacing:.03em;color:#475569;border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;padding-bottom:3px;font-size:9.5px;font-weight:800;display:flex}.col-stats-tag{color:#0284c7;background:#e0f2fe;border-radius:4px;padding:1.5px 5px;font-size:9px;font-weight:700}.col-results-metrics-grid{grid-template-columns:repeat(4,1fr);gap:4px;display:grid}.col-stat-card{text-align:center;background:#fff;border:1px solid #e2e8f0;border-radius:5px;flex-direction:column;gap:1px;padding:4px;display:flex}.col-stat-card .col-stat-label{text-transform:uppercase;color:#64748b;letter-spacing:.02em;white-space:nowrap;text-overflow:ellipsis;font-size:7.5px;font-weight:800;overflow:hidden}.col-stat-card .col-stat-val{letter-spacing:-.01em;white-space:nowrap;font-size:11px;font-weight:900}.col-stat-card .col-stat-val small{color:#64748b;font-size:7.5px;font-weight:600}.highlight-cyan{color:#0284c7}.highlight-blue{color:#2563eb}.highlight-indigo{color:#4f46e5}.highlight-slate{color:#475569}.highlight-amber{color:#d97706}.highlight-emerald{color:#16a34a}.col-results-financial-row{grid-template-columns:1fr 1fr;gap:5px;display:grid}.financial-card-cost,.financial-card-diesel{text-align:left;padding:4px 8px}.financial-val-group{justify-content:space-between;align-items:baseline;gap:4px;display:flex}.financial-val-group .col-stat-val{font-size:12.5px;font-weight:900}.stat-sub-detail{color:#64748b;white-space:nowrap;font-size:8.5px;font-weight:700}.col-savings-callout{color:#166534;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:5px;align-items:center;gap:6px;padding:3px 6px;font-size:8.5px;display:flex}.col-savings-callout.flat{color:#475569;background:#f1f5f9;border-color:#cbd5e1}.savings-icon{flex-shrink:0;font-size:10px;font-weight:900;line-height:1}.savings-content{flex-wrap:wrap;align-items:baseline;gap:3px;min-width:0;display:flex}.savings-title{text-transform:uppercase;letter-spacing:.02em;white-space:nowrap;font-size:7.5px;font-weight:800}.savings-metrics{white-space:nowrap;text-overflow:ellipsis;font-size:8.5px;font-weight:600;overflow:hidden}.savings-metrics strong{color:#15803d;font-weight:900}.col-grid-2-inputs{grid-template-columns:1fr 1fr;gap:8px;display:grid}.col-input-group{flex-direction:column;gap:2px;display:flex}.col-input-group label{text-transform:uppercase;letter-spacing:.03em;color:#475569;font-size:8.5px;font-weight:800}.col-input-group input[type=number]{color:#0f172a;box-sizing:border-box;background:#fff;border:1px solid #cbd5e1;border-radius:5px;width:100%;height:28px;padding:0 6px;font-size:11.5px;font-weight:800}.col-input-group .input-hint{color:#64748b;margin-top:1px;font-size:8px;font-weight:600}.col-input-group .input-with-unit{align-items:center;display:flex;position:relative}.col-input-group .input-with-unit input{padding-right:20px}.col-input-group .input-with-unit .unit-label{color:#94a3b8;pointer-events:none;font-size:10px;font-weight:800;position:absolute;right:6px}.mini-col-fill.demand-bar{background:linear-gradient(#10b981 0%,#059669 100%)}.col-savings-callout.deficit{color:#991b1b;background:#fef2f2;border-color:#fecaca}.col-savings-callout.deficit .savings-icon,.col-savings-callout.deficit .savings-metrics strong,.highlight-coral{color:#dc2626}.route-fare-badge-editable{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:6px;align-items:center;gap:1px;padding:1px 4px;transition:all .15s;display:inline-flex}.route-fare-badge-editable:focus-within{background:#fff;border-color:#16a34a;box-shadow:0 0 0 2px #16a34a26}.fare-symbol{color:#15803d;font-size:10px;font-weight:800}.fare-input-inline{color:#15803d;font-variant-numeric:tabular-nums;text-align:right;background:0 0;border:none;outline:none;width:44px;padding:1px 0;font-family:inherit;font-size:11px;font-weight:800}.cost-mode-toggle{background:#e2e8f0;border-radius:6px;gap:2px;padding:2px;display:inline-flex}.cost-mode-btn{color:#475569;cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:4px;padding:4px 10px;font-size:11.5px;font-weight:700;transition:all .12s}.cost-mode-btn.active{color:#0f172a;background:#fff;box-shadow:0 1px 2px #00000014}.cost-pillars-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:4px;margin-bottom:12px;display:grid}.cost-pillar-card{background:#fff;border:1.5px solid #e2e8f0;border-radius:10px;flex-direction:column;gap:10px;min-width:0;padding:12px 16px;display:flex;box-shadow:0 1px 3px #00000008}.cost-pillar-header{border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;gap:8px;padding-bottom:8px;display:flex}.cost-pillar-title{align-items:center;gap:8px;min-width:0;display:flex}.cost-pillar-title .pillar-icon{flex-shrink:0;font-size:22px;line-height:1}.cost-pillar-title h4{color:#0f172a;margin:0;font-size:14px;font-weight:800;line-height:1.2}.cost-pillar-title small{color:#64748b;white-space:nowrap;text-overflow:ellipsis;margin-top:1px;font-size:11.5px;font-weight:500;display:block;overflow:hidden}.pillar-subtotal-badge{font-variant-numeric:tabular-nums;white-space:nowrap;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;flex-shrink:0;padding:3px 8px;font-size:13.5px;font-weight:800}.pillar-subtotal-badge small{color:#64748b;font-size:11.5px;font-weight:600}.cost-inputs-grid-2x2{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 18px;display:grid}.cost-inputs-group{flex-direction:column;gap:8px;display:flex}.cost-input-row{justify-content:space-between;align-items:center;gap:8px;min-width:0;display:flex}.cost-input-row label{color:#334155;white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:12px;font-weight:700;overflow:hidden}.input-with-unit-compact{flex-shrink:0;align-items:center;width:95px;display:flex;position:relative}.input-with-unit-compact input{color:#0f172a;box-sizing:border-box;text-align:right;font-variant-numeric:tabular-nums;background:#fff;border:1px solid #cbd5e1;border-radius:5px;width:100%;height:28px;padding:0 25px 0 7px;font-size:13px;font-weight:800}.input-with-unit-compact input:disabled{color:#94a3b8;cursor:not-allowed;background:#f1f5f9}.input-with-unit-compact span{color:#94a3b8;pointer-events:none;font-size:10px;font-weight:700;position:absolute;right:6px}.input-readonly-compact{color:#64748b;font-variant-numeric:tabular-nums;flex-shrink:0;justify-content:flex-end;align-items:center;height:28px;padding:0 6px;font-size:12.5px;font-weight:800;display:flex}.cost-summary-box{background:#f8fafc;border:1.5px solid #e2e8f0;border-radius:10px;flex-direction:column;gap:10px;margin-top:2px;padding:12px 16px;display:flex}.cost-composition-header{justify-content:space-between;align-items:center;display:flex}.summary-title{text-transform:uppercase;letter-spacing:.03em;color:#1e293b;font-size:12px;font-weight:800}.summary-meta{color:#64748b;font-size:11px;font-weight:600}.cost-stacked-bar{background:#e2e8f0;border-radius:6px;height:26px;display:flex;overflow:hidden;box-shadow:inset 0 1px 2px #0000000f}.cost-bar-segment{color:#fff;white-space:nowrap;text-overflow:ellipsis;justify-content:center;align-items:center;padding:0 6px;font-size:11px;font-weight:800;transition:width .25s;display:flex;overflow:hidden}.cost-bar-segment.seg-fuel{background:linear-gradient(#f59e0b 0%,#d97706 100%)}.cost-bar-segment.seg-crew{background:linear-gradient(#3b82f6 0%,#1d4ed8 100%)}.cost-bar-segment.seg-maint{background:linear-gradient(#6366f1 0%,#4338ca 100%)}.cost-bar-segment.seg-fixed{background:linear-gradient(#64748b 0%,#475569 100%)}.cost-impact-kpis{grid-template-columns:repeat(5,1fr);gap:10px;display:grid}.impact-kpi-card{text-align:center;background:#fff;border:1px solid #e2e8f0;border-radius:7px;flex-direction:column;gap:2px;padding:8px 10px;display:flex}.impact-kpi-label{text-transform:uppercase;letter-spacing:.02em;color:#64748b;white-space:nowrap;text-overflow:ellipsis;font-size:10px;font-weight:800;overflow:hidden}.impact-kpi-val{font-variant-numeric:tabular-nums;letter-spacing:-.01em;font-size:15.5px;font-weight:900}.impact-kpi-sub{color:#64748b;white-space:nowrap;text-overflow:ellipsis;font-size:10px;font-weight:600;overflow:hidden}.driver-popover.innobus-tour-popover{color:#0f172a!important;background:#fff!important;border:1.5px solid #cbd5e1!important;border-radius:14px!important;min-width:290px!important;max-width:360px!important;padding:18px 22px!important;box-shadow:0 20px 45px -8px #0f172a66,0 0 0 1px #0000000a,0 6px 16px -2px #0000001a!important}.driver-popover.innobus-tour-popover .driver-popover-title{color:#1e40af!important;letter-spacing:-.01em!important;margin-bottom:8px!important;font-size:16px!important;font-weight:800!important}.driver-popover.innobus-tour-popover .driver-popover-description{color:#334155!important;font-size:13px!important;line-height:1.55!important}.driver-popover.innobus-tour-popover .driver-popover-description strong{color:#0369a1!important;font-weight:700!important}.driver-popover.innobus-tour-popover .driver-popover-footer{margin-top:18px!important}.driver-popover.innobus-tour-popover .driver-popover-progress-text{color:#64748b!important;font-size:11px!important;font-weight:700!important}.driver-popover.innobus-tour-popover .driver-popover-footer-btn{color:#334155!important;background:#f8fafc!important;border:1px solid #cbd5e1!important;border-radius:7px!important;padding:6px 14px!important;font-size:12px!important;font-weight:600!important;transition:all .15s!important}.driver-popover.innobus-tour-popover .driver-popover-footer-btn:hover{color:#0f172a!important;background:#e2e8f0!important}.driver-popover.innobus-tour-popover .driver-popover-next-btn{color:#fff!important;background:#2563eb!important;border-color:#1d4ed8!important;box-shadow:0 2px 8px #2563eb59!important}.driver-popover.innobus-tour-popover .driver-popover-next-btn:hover{background:#1d4ed8!important}.driver-popover.innobus-tour-popover .driver-popover-close-btn{color:#94a3b8!important;font-size:18px!important;top:10px!important;right:12px!important}.driver-popover.innobus-tour-popover .driver-popover-close-btn:hover{color:#0f172a!important}.driver-popover.innobus-tour-popover .driver-popover-arrow-side-top{border-bottom-color:#fff!important}.driver-popover.innobus-tour-popover .driver-popover-arrow-side-bottom{border-top-color:#fff!important}.driver-popover.innobus-tour-popover .driver-popover-arrow-side-left{border-right-color:#fff!important}.driver-popover.innobus-tour-popover .driver-popover-arrow-side-right{border-left-color:#fff!important}.driver-active-element{outline-offset:4px!important;border-radius:6px!important;outline:2px solid #38bdf8!important}.tour-trigger-btn{color:#60a5fa!important;background:#2563eb1f!important;border-color:#3b82f64d!important}.tour-trigger-btn:hover{color:#93c5fd!important;background:#2563eb38!important;border-color:#3b82f680!important}.gauge-panel-interactive{cursor:pointer;transition:transform .15s,box-shadow .15s,border-color .15s}.gauge-panel-interactive:hover{border-color:#3b82f6;box-shadow:0 4px 18px #2563eb1f}.gauge-title-row{justify-content:space-between;align-items:center;margin-bottom:2px;display:flex}.gauge-quick-badge{color:#2563eb;letter-spacing:.01em;background:#eff6ff;border:1px solid #bfdbfe;border-radius:999px;align-items:center;gap:3px;padding:2px 7px;font-size:10px;font-weight:700;display:inline-flex}.gauge-interactive{cursor:pointer}.gauge-interactive:hover .gauge-value{filter:drop-shadow(0 0 6px #2563eb73)}.gauge-value-group{transition:transform .15s}.gauge-value-group:hover{transform:scale(1.04)}.gauge-click-hint{fill:#3b82f6;letter-spacing:.02em;font-size:8px;font-weight:600;transition:fill .15s}.gauge-panel-interactive:hover .gauge-click-hint{fill:#1d4ed8;font-weight:700}.modal.modal-breakdown-wide{box-sizing:border-box;flex-direction:column;width:min(1560px,100vw - 48px);max-width:1620px;height:min(94vh,920px);max-height:calc(100vh - 28px);padding:16px 24px 14px;display:flex;overflow:hidden}.modal:has(.gauge-breakdown-modal-content){box-sizing:border-box;flex-direction:column;width:min(1560px,100vw - 48px);max-width:1620px;height:min(94vh,920px);max-height:calc(100vh - 28px);padding:16px 24px 14px;display:flex;overflow:hidden}.modal.modal-breakdown-wide .modal-header{border-bottom:1px solid #e2e8f0;flex-shrink:0;margin-bottom:12px;padding-bottom:10px}.modal:has(.gauge-breakdown-modal-content) .modal-header{border-bottom:1px solid #e2e8f0;flex-shrink:0;margin-bottom:12px;padding-bottom:10px}.modal.modal-breakdown-wide .modal-header h2{color:#0f172a;font-size:16.5px;font-weight:800}.modal:has(.gauge-breakdown-modal-content) .modal-header h2{color:#0f172a;font-size:16.5px;font-weight:800}.modal.modal-breakdown-wide .gauge-breakdown-modal-content{box-sizing:border-box;flex-direction:column;flex:1;gap:16px;min-height:0;padding-right:8px;display:flex;overflow-y:auto}.modal:has(.gauge-breakdown-modal-content) .gauge-breakdown-modal-content{box-sizing:border-box;flex-direction:column;flex:1;gap:16px;min-height:0;padding-right:8px;display:flex;overflow-y:auto}.breakdown-header-summary{flex-shrink:0;grid-template-columns:repeat(4,1fr);gap:14px;display:grid}@media (width<=1024px){.breakdown-header-summary{grid-template-columns:repeat(2,1fr)}}.breakdown-metric-pill{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;flex-direction:column;gap:2px;padding:10px 14px;display:flex}.breakdown-metric-pill.metric-highlight{background:#eff6ff;border-color:#bfdbfe}.breakdown-pill-label{color:#64748b;text-transform:uppercase;letter-spacing:.03em;font-size:11px;font-weight:700}.breakdown-pill-val{color:#0f172a;font-variant-numeric:tabular-nums;font-size:22px;font-weight:900;line-height:1.2}.val-emerald{color:#16a34a!important}.val-red{color:#dc2626!important}.breakdown-pill-sub{color:#64748b;font-size:11px}.breakdown-glossary-banner{background:#f1f5f9;border:1px solid #cbd5e1;border-radius:10px;align-items:stretch;gap:16px;padding:12px 16px;display:flex}.glossary-item{flex:1}.glossary-term{color:#1e40af;letter-spacing:.02em;background:#dbeafe;border-radius:4px;margin-bottom:4px;padding:2px 8px;font-size:11px;font-weight:800;display:inline-block}.glossary-desc{color:#334155;margin:0;font-size:12px;line-height:1.5}.glossary-divider{background:#cbd5e1;width:1px}.breakdown-tabs-row{border-bottom:1px solid #e2e8f0;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding-bottom:8px;display:flex}.breakdown-tabs-group{background:#f1f5f9;border-radius:8px;gap:6px;padding:3px;display:inline-flex}.breakdown-tab-btn{color:#64748b;cursor:pointer;background:0 0;border:none;border-radius:6px;padding:6px 14px;font-size:12.5px;font-weight:600;transition:all .15s}.breakdown-tab-btn.active{color:#0f172a;background:#fff;box-shadow:0 1px 4px #00000014}.breakdown-scope-tag{color:#64748b;font-size:11px;font-weight:600}.breakdown-section{flex-direction:column;gap:8px;display:flex}.breakdown-section-header{flex-direction:column;gap:2px;display:flex}.breakdown-section-title{color:#0f172a;margin:0;font-size:14.5px;font-weight:800}.breakdown-section-hint{color:#64748b;font-size:11.5px}.breakdown-table-wrapper{background:#fff;border:1px solid #e2e8f0;border-radius:10px;overflow-x:auto;box-shadow:0 1px 3px #00000008}.breakdown-data-table{border-collapse:collapse;text-align:left;width:100%;font-size:12px}.breakdown-data-table th{color:#475569;text-transform:uppercase;letter-spacing:.03em;white-space:nowrap;background:#f8fafc;border-bottom:1px solid #e2e8f0;padding:9px 12px;font-size:11px;font-weight:700}.breakdown-data-table td{color:#1e293b;white-space:nowrap;border-bottom:1px solid #f1f5f9;padding:8px 12px}.breakdown-data-table tr:last-child td{border-bottom:none}.breakdown-data-table tr:hover td{background:#f8fafc}.breakdown-data-table .num{text-align:right;font-variant-numeric:tabular-nums}.breakdown-data-table .center{text-align:center}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.row-trunk td{background:#2563eb08}.row-profitable td:first-child{border-left:3px solid #16a34a}.row-deficit td:first-child{border-left:3px solid #dc2626}.period-tag{white-space:nowrap;border-radius:4px;padding:2px 7px;font-size:10px;font-weight:700;display:inline-block}.tag-pico-mañana,.tag-pico-tarde{color:#1d4ed8;background:#eff6ff;border:1px solid #bfdbfe}.tag-valle{color:#a16207;background:#fefce8;border:1px solid #fef08a}.tag-noche,.tag-madrugada{color:#475569;background:#f1f5f9;border:1px solid #e2e8f0}.badge-coverage{white-space:nowrap;border-radius:999px;padding:2px 8px;font-size:10px;font-weight:700;display:inline-block}.badge-superavit{color:#15803d;background:#dcfce7;border:1px solid #bbf7d0}.badge-deficit{color:#b91c1c;background:#fee2e2;border:1px solid #fecaca}.route-code-badge{border-radius:4px;padding:2px 6px;font-family:ui-monospace,SFMono-Regular,monospace;font-size:11px;font-weight:800}.badge-trunk{color:#1d4ed8;background:#dbeafe;border:1px solid #bfdbfe}.badge-branch{color:#334155;background:#f1f5f9;border:1px solid #cbd5e1}.trunk-tag{color:#2563eb;background:#eff6ff;border-radius:3px;margin-left:6px;padding:1px 5px;font-size:9.5px;font-weight:700}.table-footer-total td{color:#0f172a;background:#f8fafc;border-top:2px solid #cbd5e1;font-weight:800}.breakdown-footer-actions{border-top:1px solid #e2e8f0;justify-content:space-between;align-items:center;padding-top:10px;display:flex}.breakdown-footer-note{color:#64748b;font-size:11px;font-style:italic}.pn-chip{z-index:9000;color:#7a4d00;cursor:pointer;background:#fdf4e3;border:1px solid #f0c36d;border-radius:999px;padding:6px 12px;font-family:inherit;font-size:12px;font-weight:600;position:fixed;bottom:14px;left:14px;box-shadow:0 2px 8px #00000026}.pn-chip:hover{background:#fbe9c6}.pn-backdrop{z-index:10000;background:#0a101899;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.pn-dialog{color:#1c2430;background:#fff;border-radius:14px;width:100%;max-width:520px;max-height:calc(100vh - 32px);padding:28px 28px 22px;position:relative;overflow-y:auto;box-shadow:0 20px 50px #00000059}.pn-dialog h2{margin:12px 0 10px;font-size:20px;line-height:1.3}.pn-dialog p{color:#3a4554;margin:0 0 10px;font-size:15px;line-height:1.5}.pn-badge{color:#7a4d00;background:#fdf4e3;border-radius:999px;padding:3px 10px;font-size:12px;font-weight:700;display:inline-block}.pn-close{color:#5f6b7a;cursor:pointer;background:0 0;border:0;font-size:24px;line-height:1;position:absolute;top:10px;right:12px}.pn-actions{flex-wrap:wrap;gap:10px;margin-top:18px;display:flex}.pn-cta,.pn-explore{text-align:center;cursor:pointer;border-radius:10px;flex:200px;padding:12px 16px;font-family:inherit;font-size:15px;font-weight:700;text-decoration:none}.pn-cta{color:#fff;background:#0f766e;border:0}.pn-cta:hover{background:#0c5f58}.pn-explore{color:#1c2430;background:#fff;border:1px solid #e2e6ec}.pn-explore:hover{background:#eef1f5}.pn-alt{color:#0f766e;margin-top:12px;font-size:13px;display:inline-block}.pn-qr-row{border-top:1px solid #e2e6ec;align-items:center;gap:14px;margin-top:16px;padding-top:14px;font-size:13px;display:flex}.pn-qr-row p{margin:4px 0 0;font-size:13px}.pn-qr-row .pn-alt{margin-top:0}.pn-qr{flex:none;width:104px;height:104px}:root{--ts-parchment:#f0f4f8;--ts-parchment-light:#fff;--ts-parchment-dark:#e1ebf5;--ts-ink-charcoal:#102a45;--ts-ink-dark:#16365c;--ts-ink-muted:#486581;--ts-ink-border:#9fb7d4;--ts-grid-border:#cbd8e6;--ts-grid-border-strong:#183d6d;--ts-accent-green:#059669;--ts-accent-green-bg:#ecfdf5;--ts-accent-amber:#d97706;--ts-accent-amber-bg:#fffbeb;--ts-accent-red:#dc2626;--ts-accent-red-bg:#fef2f2;--ts-accent-blue:#2563eb;--ts-hysys-orange:#e67e22;--ts-hysys-orange-grad:linear-gradient(180deg, #fdba4e 0%, #f59e0b 38%, #e67e22 65%, #d35400 100%);--ts-hysys-orange-border:#b45309;--ts-font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--ts-font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif}.ts-studio-root{background-color:var(--ts-parchment);width:100%;height:100vh;min-height:100vh;color:var(--ts-ink-charcoal);font-family:var(--ts-font-sans);box-sizing:border-box;flex-direction:column;display:flex;overflow:hidden}.ts-topbar{color:#f0f5fc;font-family:var(--ts-font-sans);letter-spacing:.5px;z-index:20;background:linear-gradient(#244b7d 0%,#16365c 100%);border-bottom:1px solid #0d223c;flex-shrink:0;justify-content:space-between;align-items:center;padding:5px 16px;font-size:11px;display:flex;box-shadow:0 1px 2px #00000026}.ts-topbar-left{align-items:center;gap:16px;display:flex}.ts-brand-tag{letter-spacing:1.5px;color:#fff;align-items:center;gap:8px;font-size:13px;font-weight:700;display:flex}.ts-brand-badge{color:#d1fae5;letter-spacing:1px;text-transform:uppercase;background-color:#3b3834;border:1px solid #059669;border-radius:2px;padding:2px 6px;font-size:9px;display:inline-block}.ts-topbar-divider{color:#57534e}.ts-topbar-meta{color:#a8a29e}.ts-topbar-right{align-items:center;gap:14px;display:flex}.ts-integrity-pill{color:#a7f3d0;background-color:#1c2b1e;border:1px solid #10b981;border-radius:2px;align-items:center;gap:6px;padding:2px 8px;font-size:10px;display:inline-flex}.ts-led-dot{background-color:#10b981;border-radius:50%;width:6px;height:6px;box-shadow:0 0 6px #10b981}.ts-led-dot.amber{background-color:#f59e0b;box-shadow:0 0 6px #f59e0b}.ts-led-dot.red{background-color:#ef4444;box-shadow:0 0 6px #ef4444}.ts-workspace-grid{background-color:var(--ts-parchment);flex:1;grid-template-columns:280px 1fr 340px;min-height:0;display:grid;overflow:hidden}.ts-sidebar{color:#162e4d;background-color:#edf3f8;border-right:1px solid #cbd8e6;flex-direction:column;font-size:12px;display:flex;overflow-y:auto}.ts-sidebar-section{border-bottom:1px solid #cbd8e6;padding:12px 14px 10px}.ts-sidebar-label{font-family:var(--ts-font-sans);letter-spacing:.5px;text-transform:uppercase;color:#627d98;justify-content:space-between;align-items:center;margin-bottom:8px;font-size:9px;font-weight:700;display:flex}.ts-tenant-card{background-color:#fff;border:1px solid #cbd8e6;border-radius:3px;padding:10px;box-shadow:0 1px 2px #102a450a}.ts-tenant-title{color:#102a45;margin-bottom:4px;font-size:13px;font-weight:700}.ts-tenant-sub{color:#486581;font-size:11px;font-family:var(--ts-font-mono)}.ts-seat-badge-row{font-size:10px;font-family:var(--ts-font-mono);border-top:1px dashed #cbd8e6;justify-content:space-between;align-items:center;margin-top:8px;padding-top:8px;display:flex}.ts-plan-pill{color:#fff;letter-spacing:.5px;text-shadow:0 1px 1px #0000004d;background:linear-gradient(#fdba4e 0%,#f59e0b 38%,#e67e22 65%,#d35400 100%);border:1px solid #b45309;border-radius:2px;padding:1px 6px;font-size:9px;font-weight:700}.ts-scenario-list{flex-direction:column;gap:6px;display:flex}.ts-scenario-item{cursor:pointer;text-align:left;color:#162e4d;background-color:#fff;border:1px solid #cbd8e6;border-radius:3px;justify-content:space-between;align-items:center;width:100%;padding:8px 10px;transition:all .15s;display:flex;box-shadow:0 1px 2px #102a450a}.ts-scenario-item:hover{background-color:#f0f6fc;border-color:#2563eb}.ts-scenario-item.active{color:#fff;background:linear-gradient(#fdba4e 0%,#f59e0b 38%,#e67e22 65%,#d35400 100%);border:1px solid #b45309;box-shadow:inset 0 1px #ffffff73,0 2px 4px #b4530940}.ts-scenario-name{color:#102a45;margin-bottom:2px;font-size:11px;font-weight:700}.ts-scenario-item.active .ts-scenario-name{color:#fff;text-shadow:0 1px 1px #00000059}.ts-scenario-desc{color:#486581;font-size:10px;font-family:var(--ts-font-mono)}.ts-scenario-item.active .ts-scenario-desc{color:#fff7ed}.ts-btn-new-scenario{color:#16365c;width:100%;font-family:var(--ts-font-sans);cursor:pointer;background-color:#fff;border:1px dashed #9fb7d4;border-radius:2px;margin-top:8px;padding:6px;font-size:10px;font-weight:600;transition:all .15s}.ts-btn-new-scenario:hover{color:#2563eb;background-color:#edf3f8;border-color:#2563eb}.ts-meter-group{font-family:var(--ts-font-mono);flex-direction:column;gap:8px;font-size:10px;display:flex}.ts-meter-row{color:#a8a29e;justify-content:space-between;display:flex}.ts-progress-bar-bg{background-color:#292524;border-radius:1px;width:100%;height:4px;margin-top:2px;overflow:hidden}.ts-progress-bar-fill{background-color:#10b981;height:100%}.ts-main-stage{background-color:var(--ts-parchment);border-right:1px solid var(--ts-grid-border);flex-direction:column;gap:14px;padding:14px 18px 24px;display:flex;overflow-y:auto}.ts-macro-kpis{grid-template-columns:repeat(5,1fr);gap:10px;display:grid}.ts-kpi-card{background-color:var(--ts-parchment-light);border:1px solid var(--ts-grid-border);border-radius:2px;padding:10px 12px;position:relative;box-shadow:0 1px 3px #0000000a}.ts-kpi-card-header{font-family:var(--ts-font-mono);letter-spacing:1px;text-transform:uppercase;color:var(--ts-ink-muted);justify-content:space-between;align-items:center;margin-bottom:4px;font-size:9px;display:flex}.ts-kpi-value{font-size:20px;font-weight:700;font-family:var(--ts-font-mono);color:var(--ts-ink-charcoal);line-height:1.2}.ts-kpi-delta{font-size:10px;font-family:var(--ts-font-mono);margin-top:4px;font-weight:600}.ts-kpi-delta.positive{color:var(--ts-accent-green)}.ts-kpi-delta.negative{color:var(--ts-accent-red)}.ts-kpi-delta.neutral{color:var(--ts-ink-muted)}.ts-knobs-panel{background-color:var(--ts-parchment-light);border:1px solid var(--ts-grid-border);border-radius:2px;padding:12px 14px}.ts-knobs-title-row{border-bottom:1px solid var(--ts-grid-border);justify-content:space-between;align-items:center;margin-bottom:12px;padding-bottom:8px;display:flex}.ts-knobs-title{font-family:var(--ts-font-mono);letter-spacing:1px;text-transform:uppercase;align-items:center;gap:8px;font-size:11px;font-weight:700;display:flex}.ts-knobs-grid{grid-template-columns:repeat(4,1fr);gap:14px;display:grid}.ts-knob-cell{flex-direction:column;gap:6px;display:flex}.ts-knob-label-row{color:var(--ts-ink-charcoal);justify-content:space-between;align-items:center;font-size:11px;font-weight:600;display:flex}.ts-knob-value{font-family:var(--ts-font-mono);color:var(--ts-ink-dark);background-color:var(--ts-parchment-dark);border:1px solid var(--ts-grid-border);border-radius:2px;padding:1px 6px;font-size:11px;font-weight:700}.ts-slider{appearance:none;background:var(--ts-parchment-dark);border:1px solid var(--ts-grid-border);border-radius:2px;outline:none;width:100%;height:6px}.ts-slider::-webkit-slider-thumb{appearance:none;background:var(--ts-ink-charcoal);cursor:pointer;border:1px solid #000;border-radius:1px;width:14px;height:14px}.ts-stage-tabs{border-bottom:2px solid var(--ts-grid-border-strong);gap:4px;margin-top:4px;display:flex}.ts-stage-tab-btn{background-color:var(--ts-parchment-dark);border:1px solid var(--ts-grid-border);font-family:var(--ts-font-mono);color:var(--ts-ink-muted);cursor:pointer;letter-spacing:.5px;border-bottom:none;border-radius:3px 3px 0 0;padding:6px 14px;font-size:11px;font-weight:600;transition:all .15s}.ts-stage-tab-btn:hover{background-color:var(--ts-parchment-light);color:var(--ts-ink-charcoal)}.ts-stage-tab-btn.active{background-color:var(--ts-parchment-light);color:var(--ts-ink-charcoal);border-color:var(--ts-grid-border-strong);border-top:3px solid var(--ts-ink-charcoal);font-weight:700}.ts-stage-content{background-color:var(--ts-parchment-light);border:1px solid var(--ts-grid-border);border-radius:2px;flex:1;min-height:380px;padding:14px}.ts-table{border-collapse:collapse;width:100%;font-size:11px;font-family:var(--ts-font-mono)}.ts-table th{text-align:left;background-color:var(--ts-parchment-dark);border-bottom:2px solid var(--ts-grid-border-strong);color:var(--ts-ink-charcoal);letter-spacing:.5px;padding:6px 8px;font-weight:700}.ts-table td{border-bottom:1px solid var(--ts-grid-border);color:var(--ts-ink-charcoal);padding:6px 8px}.ts-table tr{cursor:pointer;transition:background-color .1s}.ts-table tr:hover{background-color:#e9e3d7}.ts-table tr.selected{background-color:#dfd7c7;font-weight:600}.ts-status-tag{letter-spacing:.5px;text-transform:uppercase;border-radius:2px;padding:1px 5px;font-size:9px;font-weight:700;display:inline-block}.ts-status-tag.ok{background-color:var(--ts-accent-green-bg);color:var(--ts-accent-green);border:1px solid #86efac}.ts-status-tag.warn{background-color:var(--ts-accent-amber-bg);color:var(--ts-accent-amber);border:1px solid #fde047}.ts-status-tag.alert{background-color:var(--ts-accent-red-bg);color:var(--ts-accent-red);border:1px solid #fca5a5}.ts-inspector{background-color:var(--ts-parchment-light);border-left:1px solid var(--ts-grid-border);flex-direction:column;font-size:12px;display:flex;overflow-y:auto}.ts-inspector-header{background-color:var(--ts-parchment-dark);border-bottom:1px solid var(--ts-grid-border);padding:12px 14px}.ts-barcode-row{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.ts-record-id{font-family:var(--ts-font-mono);letter-spacing:1px;font-size:12px;font-weight:700}.ts-inspector-title{color:var(--ts-ink-charcoal);margin-bottom:4px;font-size:14px;font-weight:700}.ts-inspector-tabs{border-bottom:1px solid var(--ts-grid-border);background-color:var(--ts-parchment);display:flex}.ts-inspector-tab{font-family:var(--ts-font-mono);color:var(--ts-ink-muted);cursor:pointer;text-align:center;letter-spacing:.5px;background:0 0;border:none;flex:1;padding:6px 4px;font-size:10px;font-weight:600}.ts-inspector-tab.active{color:var(--ts-ink-charcoal);border-bottom:2px solid var(--ts-ink-charcoal);background-color:var(--ts-parchment-light);font-weight:700}.ts-inspector-body{flex-direction:column;flex:1;gap:14px;padding:14px;display:flex}.ts-inspector-section{flex-direction:column;gap:6px;display:flex}.ts-section-heading{font-family:var(--ts-font-mono);letter-spacing:1px;text-transform:uppercase;color:var(--ts-ink-muted);border-bottom:1px dashed var(--ts-grid-border);padding-bottom:3px;font-size:9px}.ts-key-val-row{justify-content:space-between;align-items:center;padding:2px 0;font-size:11px;display:flex}.ts-key-val-label{color:var(--ts-ink-muted)}.ts-key-val-value{font-family:var(--ts-font-mono);color:var(--ts-ink-charcoal);font-weight:600}.ts-btn-action{color:#fff;width:100%;font-family:var(--ts-font-sans);letter-spacing:.5px;cursor:pointer;text-shadow:0 1px 1px #00000059;background:linear-gradient(#fdba4e 0%,#f59e0b 38%,#e67e22 65%,#d35400 100%);border:1px solid #b45309;border-radius:2px;justify-content:center;align-items:center;gap:6px;padding:8px 10px;font-size:11px;font-weight:700;transition:all .15s;display:flex;box-shadow:inset 0 1px #fff6,0 1px 2px #b4530940}.ts-btn-action:hover{background:linear-gradient(#fec76f 0%,#f7a826 38%,#ea862f 65%,#dc5c07 100%)}.ts-btn-action.secondary{color:#16365c;text-shadow:none;background:#fff;border-color:#cbd8e6;box-shadow:0 1px 2px #102a450a}.ts-btn-action.secondary:hover{background-color:#edf3f8;border-color:#2563eb}.ts-btn-action.danger{color:var(--ts-accent-red);border:1px dashed var(--ts-accent-red);text-shadow:none;box-shadow:none;background-color:#0000}.ts-btn-action.danger:hover{background-color:var(--ts-accent-red-bg)}.ts-bottombar{color:#16365c;font-family:var(--ts-font-sans);background:linear-gradient(#e4edf6 0%,#d5e2f0 100%);border-top:1px solid #b2c6dc;flex-shrink:0;justify-content:space-between;align-items:center;padding:4px 14px;font-size:11px;display:flex;box-shadow:inset 0 1px #fff}.ts-bottombar-item{align-items:center;gap:6px;display:flex}@media print{body,html,.ts-studio-root{color:#000!important;background:#fff!important;height:auto!important;overflow:visible!important}.ts-topbar,.ts-sidebar,.ts-inspector,.ts-bottombar,.ts-knobs-panel,.ts-stage-tabs,.ts-btn-action{display:none!important}.ts-workspace-grid{display:block!important}.ts-main-stage{border:none!important;padding:0!important}.ts-stage-content{box-shadow:none!important;border:1px solid #000!important}.ts-table th{color:#000!important;background-color:#f3f4f6!important;border-bottom:2px solid #000!important}.ts-table td{color:#000!important;border-bottom:1px solid #ddd!important}.print-only-header{border-bottom:2px solid #000;margin-bottom:15px;padding-bottom:8px;display:block!important}}.print-only-header{display:none}:root{--fs-teal-dark:#0c3238;--fs-teal-header:#0e3b43;--fs-teal-pill:#17434b;--fs-bg-canvas:#edf0f3;--fs-bg-ribbon:#eceef1;--fs-bg-filter:#e2e6ea;--fs-border-grid:#d2d7de;--fs-loss-red:#c93b3b;--fs-loss-light:#f87171;--fs-profit-green:#2e7d32;--fs-profit-light:#66bb6a}*{box-sizing:border-box;margin:0;padding:0}.fs-root,.fs-root *,.fs-root button,.fs-root input,.fs-root select,.fs-root textarea,.fs-root table,.fs-root th,.fs-root td,.fs-root span,.fs-root div,.fs-root p,.fs-root a,.fs-root header,.fs-root footer,.fs-root aside,.fs-root main{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Segoe UI,-apple-system,BlinkMacSystemFont,Segoe UI Variable,"Segoe UI Web (West European)",Calibri,Roboto,Helvetica Neue,Arial,sans-serif!important}.fs-root{background-color:var(--fs-bg-canvas);color:#1f2937;text-rendering:optimizelegibility;-webkit-user-select:none;user-select:none;flex-direction:column;width:100%;height:100vh;min-height:100vh;display:flex;overflow:hidden}.fs-topbar{background-color:var(--fs-teal-dark);color:#fff;flex-shrink:0;justify-content:space-between;align-items:center;height:40px;padding:0 14px;font-size:11px;display:flex}.fs-topbar-left{align-items:center;gap:12px;display:flex}.fs-brand-box{align-items:center;gap:8px;display:flex}.fs-brand-icon{color:#fff;background:#0284c7;border-radius:4px;justify-content:center;align-items:center;width:22px;height:22px;font-size:13px;font-weight:600;display:flex}.fs-brand-text{flex-direction:column;line-height:1.1;display:flex}.fs-brand-name{letter-spacing:.2px;align-items:center;gap:6px;font-size:14px;font-weight:700;display:flex}.fs-brand-logo{flex-shrink:0;display:block}.fs-brand-name .fs-brand-accent{color:#38bdf8}.fs-brand-badge{color:#38bdf8;letter-spacing:.5px;font-size:8px;font-weight:600}.fs-brand-sub{color:#94a3b8;font-size:9px}.fs-doc-center{color:#fff;letter-spacing:.5px;font-size:12px;font-weight:700}.fs-topbar-right{align-items:center;gap:8px;display:flex}.fs-cloud-pill{color:#1e293b;cursor:pointer;background-color:#fff;border:1px solid #cbd5e1;border-radius:4px;align-items:stretch;height:26px;padding:0;font-size:11px;font-weight:600;display:flex;overflow:hidden}.fs-cloud-pill:hover{background-color:#f8fafc}.fs-cloud-icons{border-right:1px solid #cbd5e1;align-items:center;gap:5px;padding:0 6px 0 8px;display:flex}.fs-top-btn{background:var(--fs-teal-pill);color:#fff;cursor:pointer;border:1px solid #ffffff26;border-radius:3px;align-items:center;gap:5px;height:24px;padding:0 10px;font-size:10.5px;display:flex}.fs-ribbon{background-color:#fff;border-bottom:1px solid #d2d0ce;flex-direction:column;flex-shrink:0;display:flex}.fs-ribbon-tabs{background-color:var(--fs-teal-header);border-bottom:none;align-items:center;gap:2px;height:29px;padding:2px 10px 0;display:flex}.fs-ribbon-tab{color:#fff;cursor:pointer;background:0 0;border:none;border-radius:3px 3px 0 0;padding:5px 12px 6px;font-size:11.5px;font-weight:500;transition:background-color .1s,color .1s}.fs-ribbon-tab:hover{color:#fff;background:#ffffff26}.fs-ribbon-tab.active{color:var(--fs-teal-dark);box-shadow:none;background:#fff;border-bottom:none;font-weight:600}.fs-ribbon-tools{scrollbar-width:none;-ms-overflow-style:none;background:#f7f8fa;border-bottom:1px solid #d2d0ce;align-items:stretch;gap:0;height:71px;padding:4px 10px 3px;display:flex;overflow:auto hidden}.fs-ribbon-tools::-webkit-scrollbar{display:none}.fs-tool-group{border-right:1px solid #e1dfdd;flex-direction:column;justify-content:space-between;align-items:center;height:100%;padding:2px 8px 3px;display:flex}.fs-tool-buttons{flex:1;align-items:center;gap:3px;display:flex}.fs-tool-group-label{color:#605e5c;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;gap:3px;width:100%;margin-top:auto;padding-top:2px;font-size:9.5px;font-weight:400;line-height:1;display:flex}.fs-dialog-launcher{color:#8a8886;cursor:pointer;font-size:9px;line-height:1}.fs-dialog-launcher:hover{color:#201f1e}.fs-tool-btn{color:#1f2937;cursor:pointer;text-align:center;background:0 0;border:1px solid #0000;border-radius:3px;flex-direction:column;justify-content:flex-start;align-items:center;min-width:60px;max-width:92px;height:43px;padding:2px 6px 1px;font-size:10px;line-height:1.05;transition:background-color .1s,border-color .1s;display:flex}.fs-tool-btn:hover{background:#f3f2f1;border-color:#c8c6c4}.fs-tool-btn.active{background:#e6e9ee;border-color:#c3c9d1}.fs-tool-icon{color:#3a4654;justify-content:center;align-items:center;height:16px;margin-bottom:1px;display:flex}.fs-tool-icon svg,.fs-run-triangle svg{width:16px;height:16px}.fs-run-box{cursor:pointer;background:linear-gradient(#eef0f3 0%,#dde1e6 100%);border:1px solid #9aa3ad;border-radius:3px;flex-direction:column;justify-content:center;align-items:center;min-width:92px;height:43px;padding:2px 10px;transition:all .15s;display:flex;box-shadow:inset 0 1px #fff}.fs-run-box:hover{background:linear-gradient(#e3e7ec 0%,#cfd5dc 100%);border-color:#6b7785}.fs-run-triangle{color:#17375e;justify-content:center;align-items:center;margin-bottom:1px;display:flex}.fs-run-title{color:#1f2937;letter-spacing:.2px;text-align:center;font-size:10px;font-weight:700;line-height:1.05}.fs-ribbon-collapse-box{align-items:flex-start;margin-left:auto;padding:4px 0 0 8px;display:flex}.fs-ribbon-collapse-btn{color:#605e5c;cursor:pointer;border-radius:2px;padding:2px 6px;font-size:11px;transition:all .1s}.fs-ribbon-collapse-btn:hover{color:#201f1e;background-color:#f3f2f1}.fs-filter-strip{border-bottom:1px solid var(--fs-border-grid);scrollbar-width:none;-ms-overflow-style:none;background-color:#f1f3f5;flex-wrap:nowrap;flex-shrink:0;align-items:center;gap:14px;height:50px;padding:4px 12px;font-size:11px;display:flex;overflow-x:auto}.fs-filter-strip::-webkit-scrollbar{display:none}.fs-filter-title{color:#1f2937;letter-spacing:.2px;text-transform:uppercase;white-space:nowrap;flex-shrink:0;align-items:center;gap:5px;font-size:11px;font-weight:700;display:flex}.fs-filter-control{white-space:nowrap;flex-direction:column;flex-shrink:0;align-items:flex-start;gap:2px;display:flex}.fs-filter-label{color:#334155;font-size:10.5px;font-weight:400}.fs-filter-select{color:#1e293b;cursor:pointer;background-color:#fff;border:1px solid #b8c0ca;border-radius:2px;min-width:110px;padding:2px 6px;font-size:10.5px}.fs-route-chips{scrollbar-width:none;flex-wrap:nowrap;flex:1;align-items:center;gap:5px;min-width:0;display:flex;overflow-x:auto}.fs-route-chip{color:#fff;white-space:nowrap;background:#1f2a37;border-radius:4px;flex-shrink:0;align-items:center;gap:6px;padding:3px 6px 3px 3px;font-size:10.5px;font-weight:600;display:inline-flex}.fs-route-chip-code{color:#111827;background:#fff;border-radius:3px;padding:1px 5px;font-size:9.5px;font-weight:800}.fs-route-chip-close{cursor:pointer;color:#94a3b8;font-weight:700}.fs-route-chip-close:hover{color:#ef4444}.fs-btn-add-chip{cursor:pointer;color:#1f2937;white-space:nowrap;background:#fff;border:1px solid #b8c0ca;border-radius:3px;padding:2px 10px;font-size:10.5px}.fs-clear-filters{color:#475569;cursor:pointer;white-space:nowrap;align-items:center;gap:3px;font-size:10px;display:flex}.fs-frame{flex:1;min-height:0;display:flex;overflow:hidden}.fs-shell{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex;position:relative}.fs-body{flex:1;min-height:0;display:flex;overflow:hidden}.fs-main{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex}.fs-workspace{background-color:var(--fs-bg-canvas);flex:1;grid-template-columns:minmax(0,1fr);min-height:0;display:grid;overflow:hidden}.fs-sidebar{border-right:1px solid var(--fs-border-grid);background-color:#f4f6f8;flex-direction:column;flex-shrink:0;width:230px;font-size:11px;transition:margin-left .18s;display:flex;overflow-y:auto}.fs-sidebar.collapsed{visibility:hidden;margin-left:-230px;transition:margin-left .18s,visibility 0s linear .18s}.fs-sidebar-header{color:#1e293b;background-color:#f4f6f8;border-bottom:1px solid #dde2e8;justify-content:space-between;align-items:center;padding:7px 10px;font-size:11.5px;font-weight:700;display:flex}.fs-sidebar-search{padding:6px 8px;display:flex;position:relative}.fs-search-input{background:#fff;border:1px solid #b8c0ca;border-radius:2px;flex:1 1 0;padding:3px 22px 3px 6px;font-size:10.5px}.fs-sidebar-actions{border-bottom:1px solid #dde2e8;gap:6px;padding:0 8px 6px;display:flex}.fs-side-action-btn{cursor:pointer;color:#1f2937;background:#fff;border:1px solid #b8c0ca;border-radius:2px;flex:1 1 0;justify-content:center;align-items:center;gap:4px;padding:3px 6px;font-size:10.5px;display:flex}.fs-tree{flex-direction:column;flex:1;gap:1px;padding:6px 4px;display:flex}.fs-tree-group-title{color:#1f2937;cursor:pointer;align-items:center;gap:5px;padding:3px 4px;font-size:11px;font-weight:400;display:flex}.fs-tree-item{cursor:pointer;color:#1f2937;white-space:nowrap;border-radius:2px;align-items:center;gap:6px;padding:3px 6px 3px 26px;font-size:11px;display:flex}.fs-tree-item.active{background-color:#dfe4ea;font-weight:600}.fs-scenario-meta-box{color:#475569;background-color:#fff;border:1px solid #cbd5e1;border-radius:3px;flex-direction:column;gap:2px;margin:auto 6px 6px;padding:6px 8px;font-size:10px;display:flex}.fs-stage{background-color:#eaeff2;grid-template-rows:minmax(190px,.8fr) minmax(220px,1fr);gap:8px;min-height:0;padding:8px 10px;display:grid;overflow:hidden}.fs-cards-grid-top{grid-template-columns:minmax(240px,.36fr) 1fr;gap:8px;min-height:0;display:grid}.fs-cards-grid-bottom{grid-template-columns:1fr minmax(260px,.42fr);gap:8px;min-height:0;display:grid}.fs-card{border:1px solid var(--fs-border-grid);background:#fff;border-radius:4px;flex-direction:column;min-height:0;padding:8px 12px;display:flex;box-shadow:0 1px 2px #0000000a}.fs-card-header{justify-content:space-between;align-items:flex-start;margin-bottom:4px;display:flex}.fs-card-title-block{flex-direction:column;display:flex}.fs-card-title{color:#0f172a;font-size:12px;font-weight:700}.fs-card-sub{color:#64748b;align-items:center;gap:4px;margin-top:2px;font-size:9.5px;display:flex}.fs-gauge-container{flex-direction:column;flex:1 1 0;justify-content:center;align-items:center;min-height:0;display:flex}.fs-gauge-value{color:#8b1414;margin-top:-10px;font-size:30px;font-weight:800;line-height:1}.fs-gauge-subtext{color:#1f2937;margin-top:3px;font-size:11px}.fs-gauge-link{color:#1d5fa8;cursor:pointer;font-size:11px}.fs-bar-col{flex-direction:column;flex:1 1 0;justify-content:flex-end;align-items:center;min-width:0;height:100%;display:flex;position:relative}.fs-bar-rect{border-radius:1px 1px 0 0;width:78%;max-width:34px}.fs-bar-rect.profit{background-color:var(--fs-profit-green)}.fs-bar-rect.loss{background-color:var(--fs-loss-red)}.fs-bar-hour-label{color:#475569;font-size:9px;position:absolute;bottom:-16px}.fs-heat-route-name{color:#1e293b;white-space:nowrap;text-overflow:ellipsis;align-self:center;padding-right:6px;font-size:10px;overflow:hidden}.fs-heat-cell{border-radius:1px;min-height:10px;display:block}.fs-heat-cell.deep-red,.fs-heat-legend i.deep-red{background-color:#c93b3b}.fs-heat-cell.light-red,.fs-heat-legend i.light-red{background-color:#e98b8b}.fs-heat-cell.light-green,.fs-heat-legend i.light-green{background-color:#9fd59a}.fs-heat-cell.deep-green,.fs-heat-legend i.deep-green{background-color:#3f9142}.fs-occupancy-list{flex-direction:column;flex:1 1 0;justify-content:space-around;gap:2px;min-height:0;margin-top:4px;display:flex}.fs-occupancy-row{align-items:center;gap:8px;display:flex}.fs-occupancy-name{color:#1e293b;white-space:nowrap;text-overflow:ellipsis;flex-shrink:0;width:112px;font-size:10px;overflow:hidden}.fs-occupancy-bar-bg{background-color:#c9d3de;border-radius:1px;flex:1 1 0;justify-content:flex-end;height:9px;display:flex;overflow:hidden}.fs-sheet-tabs{background-color:#f3f3f3;border-top:1px solid #d4d4d4;flex-shrink:0;align-items:stretch;height:28px;padding:0 8px 0 4px;display:flex;overflow:hidden}.fs-sheet-tab{color:#262626;cursor:pointer;white-space:nowrap;background:0 0;border:none;border-right:1px solid #d4d4d4;padding:0 18px;font-size:11.5px;font-weight:400;position:relative}.fs-sheet-tab:first-of-type{border-left:1px solid #d4d4d4}.fs-sheet-tab:hover{background:#e6e6e6}.fs-sheet-tab.active{color:#107c41;background:#fff;border-top:1px solid #fff;margin-top:-1px;font-weight:700}.fs-sheet-tab.active:after{content:"";background:#107c41;height:2px;position:absolute;bottom:3px;left:10px;right:10px}.fs-btn-add-sheet{color:#595959;cursor:pointer;background:0 0;border:1px solid #a6a6a6;border-radius:50%;justify-content:center;align-self:center;align-items:center;width:20px;height:20px;margin-left:8px;font-size:13px;line-height:1;display:flex}.fs-btn-add-sheet:hover{background:#e6e6e6}.fs-statusbar{background-color:var(--fs-teal-dark);color:#cbd5e1;flex-shrink:0;justify-content:space-between;align-items:center;height:22px;padding:2px 14px;font-size:10px;display:flex}.fs-status-telemetry{color:#f1f5f9;align-items:center;gap:6px;font-weight:500;display:flex}.fs-status-controls{align-items:center;gap:12px;display:flex}.fs-zoom-slider{align-items:center;gap:4px;font-size:10px;display:flex}.fs-cloud-caret{color:#475569;font-size:9px}.fs-cloud-label{background:#e8edf2;align-items:center;padding:0 10px;display:flex}.fs-sidebar-cloud{border-bottom:1px solid #dde2e8;padding:6px 8px}.fs-sidebar-cloud .fs-cloud-pill{width:100%}.fs-sidebar-cloud .fs-cloud-label{flex:1;justify-content:center}.fs-account{cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:8px;display:flex}.fs-avatar{color:#fff;background:linear-gradient(135deg,#f59e0b,#d97706);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:11px;font-weight:700;display:flex}.fs-account-text{flex-direction:column;min-width:0;line-height:1.2;display:flex}.fs-account-name{white-space:nowrap;text-overflow:ellipsis;font-size:11.5px;font-weight:600;overflow:hidden}.fs-account-role{white-space:nowrap;font-size:9.5px}.fs-account-top{color:#fff;border-left:1px solid #ffffff26;border-radius:0 4px 4px 0;height:34px;margin-left:4px;padding:0 10px 0 4px}.fs-account-top:hover{background:#ffffff1a}.fs-account-top .fs-account-role{color:#94a3b8}.fs-account-side{color:#1e293b;background:#e8f1f8;border-bottom:1px solid #dde2e8;width:100%;padding:10px 12px}.fs-account-side:hover{background:#dcebf6}.fs-account-side .fs-avatar{width:34px;height:34px;font-size:12.5px}.fs-account-side .fs-account-role{color:#64748b}.fs-hamburger{color:#fff;cursor:pointer;background:0 0;border:none;border-radius:3px;flex-shrink:0;align-self:center;width:32px;height:32px;margin-left:-6px;padding:0;font-size:18px;line-height:1}.fs-hamburger:hover{background:#ffffff24}.fs-filter-actions{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:4px;margin-left:auto;display:flex}.fs-sidebar-filter{color:#64748b;cursor:pointer;display:flex}.fs-search-icon{color:#64748b;pointer-events:none;font-size:13px;position:absolute;top:50%;right:14px;transform:translateY(-50%)}.fs-tree-caret{color:#64748b;width:8px;font-size:11px;transition:transform .1s;display:inline-block}.fs-tree-caret.open{transform:rotate(90deg)}.fs-tree-item:hover{background-color:#e8ecf0}.fs-tree-trailing{margin-left:auto;display:flex}.fs-help-dot{color:#94a3b8;cursor:help;border:1px solid #b8c0ca;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:14px;height:14px;font-size:9px;font-weight:700;display:flex}.fs-legend-dot{border-radius:50%;width:7px;height:7px;display:inline-block}.fs-gauge-svg{flex:1;width:100%;max-width:280px;min-height:0}.fs-barchart{flex:1 1 0;gap:6px;min-height:0;padding:8px 0 18px;display:flex}.fs-bar-yaxis{color:#64748b;text-align:right;flex-direction:column;justify-content:space-between;width:16px;margin:-6px 0;font-size:9px;display:flex}.fs-bar-plot{border-bottom:1px solid #cbd5e1;flex:1 1 0;align-items:flex-end;gap:6px;display:flex;position:relative}.fs-bar-gridline{border-top:1px solid #eef1f4;position:absolute;left:0;right:0}.fs-bar-equilibrium{z-index:2;pointer-events:none;border-top:1.5px dashed #334155;justify-content:flex-end;display:flex;position:absolute;left:0;right:0}.fs-bar-equilibrium span{color:#1f2937;background:#fff;padding:0 4px;font-size:9px;font-weight:700;transform:translateY(-120%)}.fs-heatmap{flex:1 1 0;grid-template-rows:14px;grid-auto-rows:minmax(10px,1fr);gap:2px;min-height:0;margin-top:4px;display:grid}.fs-heat-hour{color:#334155;text-align:left;white-space:nowrap;font-size:9.5px;font-weight:600;overflow:visible}.fs-heat-cell.no-service,.fs-heat-legend i.no-service{background-color:#e5e8ec}.fs-heat-legend{color:#475569;flex-wrap:wrap;justify-content:flex-end;gap:8px;font-size:9.5px;display:flex}.fs-heat-legend i{vertical-align:-1px;border-radius:1px;width:9px;height:9px;display:inline-block}.fs-occupancy-bar-fill{background-color:#3f9142;height:100%}.fs-sheet-nav{color:#a6a6a6;cursor:pointer;align-self:center;padding:0 8px;font-size:11px}.fs-sheet-nav:hover{color:#404040}.fs-sheet-nav+.fs-sheet-nav{margin-right:14px}.fs-ribbon-tabs .fs-ribbon-collapse-btn{color:#fff;background:0 0;border:none;margin-left:auto;font-size:12px}.fs-ribbon-tabs .fs-ribbon-collapse-btn:hover{color:#fff;background:#ffffff26}.fs-ribbon.compact .fs-ribbon-tools{height:30px;padding:2px 10px}.fs-ribbon.compact .fs-tool-group{padding:0 4px}.fs-ribbon.compact .fs-tool-group-label,.fs-ribbon.compact .fs-tool-btn>span:not(.fs-tool-icon),.fs-ribbon.compact .fs-small-btn>span,.fs-ribbon.compact .fs-run-title{display:none}.fs-ribbon.compact .fs-tool-buttons{gap:1px}.fs-ribbon.compact .fs-tool-btn,.fs-ribbon.compact .fs-small-btn,.fs-ribbon.compact .fs-run-box{justify-content:center;width:24px;min-width:0;height:24px;padding:0}.fs-ribbon.compact .fs-tool-icon{margin:0}.fs-ribbon.compact .fs-tool-icon svg,.fs-ribbon.compact .fs-run-triangle svg,.fs-ribbon.compact .fs-small-btn svg{width:12px;height:12px}.fs-ribbon.compact .fs-run-box{width:32px}.fs-ribbon.compact .fs-small-stack{flex-direction:row;align-items:center}.fs-ribbon.compact .fs-ribbon-field{flex-direction:row;align-items:center;padding:0 2px}.fs-ribbon.compact .fs-spinner{height:22px}.fs-doc-dirty{color:#fbbf24}.fs-sheet-tab-draft{font-style:italic;border-top:2px solid #f59e0b!important}.um-container{box-sizing:border-box;background-color:#f0f4f8;flex-direction:column;gap:14px;height:100%;padding:16px 20px 30px;display:flex;overflow-y:auto}.um-header-card{background-color:#fff;border:1px solid #cbd8e6;border-radius:3px;justify-content:space-between;align-items:center;padding:14px 18px;display:flex;box-shadow:0 1px 3px #102a450d}.um-title-row{flex-direction:column;display:flex}.um-barcode-tag{letter-spacing:.5px;color:#627d98;align-items:center;gap:8px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;display:flex}.um-title{color:#102a45;margin:4px 0 2px;font-size:18px;font-weight:800}.um-subtitle{color:#486581;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:11px}.um-plan-grid{grid-template-columns:1.2fr 1fr 1fr;gap:12px;display:grid}.um-card{background-color:#fff;border:1px solid #cbd8e6;border-radius:3px;flex-direction:column;gap:10px;padding:14px;display:flex;box-shadow:0 1px 3px #102a450a}.um-card-header{letter-spacing:.5px;text-transform:uppercase;color:#486581;border-bottom:1px solid #cbd8e6;justify-content:space-between;align-items:center;padding-bottom:6px;font-size:10px;font-weight:700;display:flex}.um-plan-badge{color:#fff;letter-spacing:.5px;text-shadow:0 1px 1px #0000004d;background:linear-gradient(#fdba4e 0%,#f59e0b 38%,#e67e22 65%,#d35400 100%);border:1px solid #b45309;border-radius:2px;padding:3px 8px;font-size:10px;font-weight:700;display:inline-block}.um-card-price{color:#102a45;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:24px;font-weight:800;line-height:1}.um-feature-list{flex-direction:column;gap:6px;font-size:11px;display:flex}.um-feature-item{align-items:center;gap:6px;display:flex}.um-feature-item.enabled{color:#059669;font-weight:600}.um-feature-item.locked{color:#94a3b8}.um-seats-table{border-collapse:collapse;width:100%;margin-top:6px;font-size:11px}.um-seats-table th{text-align:left;color:#16365c;text-transform:uppercase;background-color:#f0f5fa;border-bottom:1px solid #9fb7d4;padding:6px 8px;font-size:10px;font-weight:700}.um-seats-table td{color:#162e4d;border-bottom:1px solid #e2ecf5;padding:8px}.um-seats-table tr.vacant{background-color:#f8fafc;border-left:3px dashed #cbd8e6}.um-vault-box{background-color:#f8fafc;border:1px solid #cbd8e6;border-radius:3px;flex-direction:column;gap:8px;padding:12px 14px;display:flex}.um-btn{color:#fff;cursor:pointer;background:linear-gradient(#244b7d 0%,#16365c 100%);border:1px solid #0f2747;border-radius:2px;align-items:center;gap:6px;padding:8px 12px;font-size:11px;font-weight:700;text-decoration:none;transition:all .15s;display:inline-flex;box-shadow:0 1px 2px #0000001a}.um-btn:hover{background:linear-gradient(#2c5994 0%,#1a3f6b 100%)}.um-btn.secondary{color:#16365c;background:#fff;border-color:#cbd8e6}.um-btn.secondary:hover{background-color:#edf2f8;border-color:#b2c6dc}.wz-backdrop{z-index:60;background:#0f172a73;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.wz-panel{color:#1f2937;background:#fff;border-radius:6px;flex-direction:column;width:min(1040px,100%);height:min(720px,100%);font-size:12.5px;display:flex;overflow:hidden;box-shadow:0 18px 50px #0000004d}.wz-header{color:#fff;background:#0c3238;padding:12px 18px 10px}.wz-title{margin-bottom:8px;font-size:15px;font-weight:700}.wz-steps{color:#fff9;flex-wrap:wrap;gap:4px 18px;margin:0;padding:0;font-size:11.5px;list-style:none;display:flex}.wz-steps li{align-items:center;gap:6px;display:flex}.wz-steps li span{border:1px solid #ffffff80;border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;font-size:10px;display:inline-flex}.wz-steps li.active{color:#fff;font-weight:700}.wz-steps li.active span{color:#0c3238;background:#fff;border-color:#fff}.wz-steps li.done{color:#a7f3d0}.wz-body{flex:1;min-height:0;padding:14px 18px;overflow-y:auto}.wz-body h3{color:#17375e;margin:4px 0 6px;font-size:14px}.wz-lead{color:#334155;margin:0 0 10px;line-height:1.5}.wz-muted{color:#64748b;font-size:11.5px}.wz-error{color:#7f1d1d;background:#fdecec;border-radius:4px;margin-bottom:10px;padding:6px 10px}.wz-note{color:#78350f;background:#fffbeb;border-left:3px solid #f59e0b;margin:8px 0;padding:6px 10px;line-height:1.45}.wz-quick{align-items:center;gap:6px;margin-bottom:8px;display:flex}.wz-quick button,.wz-chips button,.wz-seg button{color:#1f2937;cursor:pointer;background:#fff;border:1px solid #b8c0ca;border-radius:3px;padding:4px 10px;font-size:11.5px}.wz-copy-name{color:#0f766e;font-size:11.5px}.wz-origin-table,.wz-summary,.wz-routes{border-collapse:collapse;width:100%}.wz-origin-table td,.wz-summary td,.wz-routes td{vertical-align:middle;border-bottom:1px solid #e5e7eb;padding:7px 6px}.wz-origin-table td:last-child{text-align:right}.wz-seg{display:inline-flex}.wz-seg button{border-radius:0;margin-left:-1px}.wz-seg button:first-child{border-radius:3px 0 0 3px}.wz-seg button:last-child{border-radius:0 3px 3px 0}.wz-seg button.active,.wz-chips button.active{color:#fff;background:#17375e;border-color:#17375e;font-weight:700}.wz-seg button:disabled,.wz-chips button:disabled{color:#9ca3af;cursor:not-allowed;background:#f3f4f6}.wz-review{gap:16px;min-height:100%;display:flex}.wz-section-nav{flex-direction:column;flex-shrink:0;gap:2px;width:220px;display:flex}.wz-section-nav button{text-align:left;color:#1f2937;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:4px;flex-direction:column;gap:2px;padding:7px 9px;font-size:12px;display:flex}.wz-section-nav button small{color:#64748b;font-size:10.5px}.wz-section-nav button.active{background:#eef3fb;border-color:#c6d6ef;font-weight:700}.wz-section{flex:1;min-width:0}.wz-group h4{text-transform:uppercase;letter-spacing:.4px;color:#64748b;margin:12px 0 6px;font-size:11px}.wz-fields{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px;display:grid}.wz-field{border:1px solid #e5e7eb;border-left-width:3px;border-radius:4px;flex-direction:column;gap:3px;padding:6px 8px;display:flex}.wz-field-label{color:#334155;font-size:11.5px}.wz-input{align-items:center;gap:6px;display:flex}.wz-input input{border:1px solid #b8c0ca;border-radius:3px;width:100%;min-width:0;padding:4px 6px;font-size:12.5px;font-weight:600}.wz-input em{color:#64748b;white-space:nowrap;font-size:11px;font-style:normal}.wz-source{font-size:10.5px;font-weight:600}.src-publica{border-left-color:#2563eb}.src-publica .wz-source,.wz-pill.src-publica{color:#1d4ed8}.src-estimado{border-left-color:#f59e0b}.src-estimado .wz-source,.wz-pill.src-estimado{color:#b45309}.src-operador{border-left-color:#16a34a}.src-operador .wz-source,.wz-pill.src-operador{color:#15803d}.src-copia{border-left-color:#0d9488}.src-copia .wz-source,.wz-pill.src-copia{color:#0f766e}.src-vacio{border-left-color:#dc2626}.src-vacio .wz-source,.wz-pill.src-vacio{color:#b91c1c}.wz-pill{margin-right:8px;font-size:11px;font-weight:600;display:inline-block}.wz-routes td{padding:4px 6px;font-size:11.5px}.wz-chips{flex-wrap:wrap;gap:6px;margin-bottom:14px;display:flex}.wz-name{align-items:center;gap:4px;margin-bottom:8px;display:flex}.wz-name input{border:1px solid #b8c0ca;border-radius:3px;width:280px;max-width:100%;padding:5px 8px;font-size:13px}.wz-body textarea{width:100%;max-width:560px;font:inherit;border:1px solid #b8c0ca;border-radius:3px;margin-bottom:8px;padding:6px 8px}.wz-footer{background:#f8fafc;border-top:1px solid #e5e7eb;align-items:center;gap:8px;padding:10px 18px;display:flex}.wz-spacer{flex:1}.wz-btn{color:#fff;cursor:pointer;background:#17375e;border:1px solid #17375e;border-radius:3px;padding:6px 14px;font-size:12px;font-weight:600}.wz-btn.ghost{color:#17375e;background:#fff}@media (width<=720px){.wz-review{flex-direction:column}.wz-section-nav{width:100%}.wz-origin-table td:last-child{text-align:left}.wz-origin-table tr{flex-direction:column;display:flex}}.wz-saved{color:#17375e;background:#eef3fb;border:1px solid #c6d6ef;border-radius:4px;margin-bottom:10px;padding:8px 10px;line-height:1.5}.wz-check{cursor:pointer;align-items:flex-start;gap:8px;margin-top:6px;line-height:1.45;display:flex}.wz-check input{margin-top:3px}.wz-panel-small{width:min(560px,100%);height:auto;max-height:100%}.wz-choices{flex-direction:column;gap:4px;margin-bottom:10px;display:flex}.wz-window{color:#1f2937;background:#fff;border:1px solid #5f6b7a;flex-direction:column;width:min(940px,100%);height:min(640px,100%);font-size:12.5px;display:flex;box-shadow:0 16px 48px #00000059}.wz-titlebar{color:#1f2937;border-bottom:1px solid #e5e7eb;flex-shrink:0;align-items:center;gap:8px;height:30px;padding-left:10px;font-size:12px;display:flex}.wz-close{color:#374151;cursor:pointer;background:0 0;border:none;width:46px;height:30px;font-size:13px}.wz-close:hover{color:#fff;background:#e81123}.wz-main{flex:1;min-height:0;display:flex}.wz-side{color:#fff;background:linear-gradient(165deg,#1b6f86 0%,#0c3238 100%);flex-direction:column;flex-shrink:0;justify-content:space-between;gap:16px;width:200px;padding:20px 14px 18px;display:flex}.wz-side .wz-steps{color:#fff9;flex-direction:column;gap:12px;font-size:12px}.wz-side .wz-steps li.done{color:#ffffffd9}.wz-side .wz-steps li.done span{background:#fff3}.wz-art{align-self:center;width:100%;max-width:170px}.wz-page{flex-direction:column;flex:1;min-width:0;padding:18px 0 0 24px;display:flex}.wz-page-title{color:#17375e;margin:0 0 4px;font-size:21px;font-weight:400}.wz-page-sub{color:#64748b;font-size:12px}.wz-page .wz-body{padding:10px 22px 16px 0}.wz-question{color:#111827;margin:6px 0 10px;font-size:13px;font-weight:600}.wz-options{flex-direction:column;gap:12px;margin-bottom:14px;display:flex}.wz-option{cursor:pointer;align-items:flex-start;gap:8px;display:flex}.wz-option input{accent-color:#17375e;margin-top:2px}.wz-option-label{color:#111827;font-size:13px;display:block}.wz-option.checked .wz-option-label{font-weight:600}.wz-option-desc{color:#4b5563;margin-top:2px;font-size:12px;line-height:1.45;display:block}.wz-option .wz-saved{color:inherit;background:0 0;border:none;margin:0;padding:0}.wz-footer{background:#f0f0f0;border-top:1px solid #dfdfdf;gap:8px;padding:10px 14px}.wz-btn,.wz-btn.ghost{color:#111;background:#e1e1e1;border:1px solid #adadad;border-radius:2px;min-width:86px;height:27px;padding:0 12px;font-size:12px;font-weight:400}.wz-btn:hover:not(:disabled){background:#e5f1fb;border-color:#17607a}.wz-btn.default{border-color:#17375e;box-shadow:inset 0 0 0 1px #17375e}.wz-btn:disabled{color:#9ca3af;cursor:default;background:#f3f4f6;border-color:#d1d5db}.wz-cancel{margin-left:8px}@media (width<=720px){.wz-side{display:none}.wz-page{padding-left:14px}}.fs-tool-group-pinned{border-left:1px solid #e1dfdd;border-right:none;margin-left:auto}.fs-small-stack{flex-direction:column;justify-content:center;align-self:stretch;gap:1px;display:flex}.fs-small-btn{color:#1f2937;cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #0000;border-radius:3px;align-items:center;gap:6px;padding:1px 8px 1px 4px;font-size:10.5px;display:flex}.fs-small-btn svg{color:#3a4654}.fs-small-btn:hover{background:#eef0f3;border-color:#c8c6c4}.fs-small-btn.active{background:#e6e9ee;border-color:#c3c9d1}.fs-ribbon-field{flex-direction:column;gap:6px;padding:2px 4px;display:flex}.fs-spinner{background:#fff;border:1px solid #b8c0ca;border-radius:3px;align-items:stretch;width:fit-content;height:26px;display:inline-flex}.fs-spinner button{cursor:pointer;color:#1f2937;background:#f1f3f5;border:none;width:24px;font-size:13px}.fs-spinner input{text-align:center;color:#17375e;border:none;border-left:1px solid #dde2e8;width:52px;font-size:13px;font-weight:700}.fs-spinner span{color:#64748b;border-right:1px solid #dde2e8;align-items:center;padding:0 6px;font-size:10px;display:flex}.fs-chip-row{gap:4px;display:flex}.fs-ribbon-chip{cursor:pointer;white-space:nowrap;color:#1f2937;background:#fff;border:1px solid #b8c0ca;border-radius:3px;padding:2px 8px;font-size:10px}.fs-ribbon-chip.active{color:#fff;background:#17375e;border-color:#17375e;font-weight:700}:root{--br-teal-dark:#0c3238;--br-teal-primary:#0e3b43;--br-teal-accent:#0078d4;--br-amber:#d83b01;--br-green:#107c41;--br-green-light:#2e7d32;--br-red:#c93b3b;--br-bg-sheet:#f8fafc;--br-border:#d2d7de;--br-text-dark:#0f172a;--br-text-muted:#475569}.br-container{color:#1e293b;box-sizing:border-box;background-color:#334155;width:100%;min-height:100vh;padding:24px;font-family:Segoe UI,-apple-system,BlinkMacSystemFont,Segoe UI Variable,Roboto,sans-serif;overflow-y:auto}.br-toolbar{background:#fff;border-radius:6px;justify-content:space-between;align-items:center;max-width:1140px;margin:0 auto 20px;padding:10px 18px;display:flex;box-shadow:0 4px 12px #0003}.br-toolbar-title{color:var(--br-teal-dark);align-items:center;gap:8px;font-size:14px;font-weight:700;display:flex}.br-toolbar-actions{align-items:center;gap:10px;display:flex}.br-btn{cursor:pointer;border:1px solid #0000;border-radius:4px;align-items:center;gap:6px;padding:6px 14px;font-size:12px;font-weight:600;transition:all .15s;display:inline-flex}.br-btn-primary{color:#fff;background-color:#0078d4}.br-btn-primary:hover{background-color:#0060aa}.br-btn-secondary{color:#334155;background-color:#f1f5f9;border-color:#cbd5e1}.br-btn-secondary:hover{background-color:#e2e8f0}.br-spread{grid-template-columns:1fr 1fr;gap:20px;max-width:1140px;margin:0 auto 30px;display:grid}.br-page{box-sizing:border-box;background:#fff;border-radius:3px;flex-direction:column;width:100%;min-height:880px;padding:22px 26px;display:flex;position:relative;overflow:hidden;box-shadow:0 10px 25px #00000040}.br-header{border-bottom:2px solid var(--br-teal-dark);justify-content:space-between;align-items:center;margin-bottom:12px;padding-bottom:8px;display:flex}.br-header-brand{align-items:center;gap:8px;display:flex}.br-logo-badge{color:#fff;background:#0284c7;border-radius:4px;padding:3px 7px;font-size:14px;font-weight:900}.br-brand-title{color:var(--br-teal-dark);letter-spacing:.5px;font-size:15px;font-weight:800}.br-brand-sub{color:#64748b;font-size:9px;font-weight:500}.br-header-tag{color:#0284c7;text-transform:uppercase;background:#e0f2fe;border-radius:12px;padding:3px 8px;font-size:10px;font-weight:700}.br-hero-title{color:var(--br-teal-dark);margin-bottom:4px;font-size:17px;font-weight:800;line-height:1.25}.br-hero-desc{color:var(--br-text-muted);margin-bottom:10px;font-size:10px;line-height:1.35}.br-card{border:1px solid var(--br-border);background:#fff;border-radius:6px;margin-bottom:10px;padding:9px 11px;box-shadow:0 1px 3px #0000000a}.br-card-header{border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;margin-bottom:5px;padding-bottom:3px;display:flex}.br-card-title{color:var(--br-text-dark);align-items:center;gap:6px;font-size:11px;font-weight:700;display:flex}.br-card-badge{text-transform:uppercase;border-radius:3px;padding:2px 6px;font-size:8px;font-weight:700}.br-badge-green{color:#166534;background:#dcfce7}.br-badge-blue{color:#0369a1;background:#e0f2fe}.br-badge-red{color:#991b1b;background:#fee2e2}.br-badge-amber{color:#92400e;background:#fef3c7}.br-screenshot-frame{background:#0f172a;border:1px solid #cbd5e1;border-radius:5px;width:100%;max-height:165px;margin:5px 0 8px;position:relative;overflow:hidden;box-shadow:0 2px 6px #0000001a}.br-screenshot-img{object-fit:cover;object-position:top;width:100%;height:100%;max-height:165px;display:block}.br-callout-grid{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:8px;display:grid}.br-callout-item{background:#f8fafc;border-left:3px solid #0284c7;border-radius:0 4px 4px 0;padding:6px 8px}.br-callout-label{color:#334155;margin-bottom:2px;font-size:9px;font-weight:700}.br-callout-value{color:var(--br-teal-dark);font-variant-numeric:tabular-nums;font-size:11px;font-weight:800}.br-callout-sub{color:#64748b;font-size:8px}.br-kpi-row{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:6px;justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px;padding:8px 12px;display:flex}.br-kpi-block{text-align:center;flex-direction:column;flex:1;align-items:center;display:flex}.br-kpi-num{color:var(--br-teal-dark);font-variant-numeric:tabular-nums;font-size:14px;font-weight:800;line-height:1.1}.br-kpi-label{color:#64748b;text-transform:uppercase;margin-top:2px;font-size:8px;font-weight:600}.br-footer{border-top:1px solid var(--br-border);color:#64748b;justify-content:space-between;align-items:center;margin-top:auto;padding-top:8px;font-size:8.5px;display:flex}.br-footer-left{font-weight:600}.br-page-num{color:var(--br-teal-dark);font-weight:700}.br-specs-grid{background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;grid-template-columns:1fr 1fr;gap:10px;margin-top:8px;padding:12px;display:grid}.br-spec-group{flex-direction:column;gap:4px;display:flex}.br-spec-title{color:#1e293b;border-bottom:1px solid #cbd5e1;padding-bottom:2px;font-size:9.5px;font-weight:700}.br-spec-row{color:#475569;justify-content:space-between;font-size:8.5px;display:flex}.br-spec-key{font-weight:600}.br-spec-val{color:#0f172a;font-weight:500}@media print{body,.br-container{background:0 0!important;padding:0!important}.br-toolbar{display:none!important}.br-spread{max-width:none!important;margin:0!important;display:block!important}.br-page{page-break-after:always;box-shadow:none!important;aspect-ratio:auto!important;border-radius:0!important;width:100%!important;height:100vh!important;padding:20mm!important}}.sv-stage{background-color:#eaeff2;flex-direction:column;gap:8px;min-height:0;padding:8px 10px;display:flex;overflow-y:auto}.sv-title-row{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.sv-title{color:#0f172a;font-size:15px;font-weight:700}.sv-subtitle{color:#64748b;font-size:10.5px}.sv-sim-badge{color:#92400e;white-space:nowrap;background:#fef3c7;border:1px solid #fcd34d;border-radius:3px;padding:1px 6px;font-size:9.5px}.sv-grid-2{grid-template-columns:1fr 1fr;gap:8px;min-height:0;display:grid}.sv-grid-main-side{flex:1;grid-template-columns:1fr minmax(260px,.42fr);gap:8px;min-height:0;display:grid}.sv-card{background:#fff;border:1px solid #d2d7de;border-radius:4px;flex-direction:column;min-height:0;padding:10px 12px;display:flex;box-shadow:0 1px 2px #0000000a}.sv-card-title{color:#0f172a;margin-bottom:2px;font-size:12px;font-weight:700}.sv-card-sub{color:#64748b;margin-bottom:8px;font-size:9.5px}.sv-kpis{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.sv-kpi{background:#fff;border:1px solid #d2d7de;border-radius:4px;padding:10px 12px}.sv-kpi-label{color:#64748b;font-size:10px}.sv-kpi-value{color:#0f172a;font-size:22px;font-weight:800;line-height:1.2}.sv-kpi-value.bad{color:#8b1414}.sv-kpi-value.good{color:#2e6b31}.sv-kpi-note{color:#64748b;font-size:9.5px}.sv-table-wrap{min-height:0;overflow:auto}.sv-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:10.5px}.sv-table th{color:#334155;text-align:left;white-space:nowrap;background:#f1f4f7;border-bottom:1px solid #d2d7de;padding:5px 8px;font-weight:700;position:sticky;top:0}.sv-table td{color:#1e293b;white-space:nowrap;border-bottom:1px solid #eef1f4;padding:4px 8px}.sv-table .num{text-align:right}.sv-table tbody tr{cursor:default}.sv-table tbody tr.clickable{cursor:pointer}.sv-table tbody tr.clickable:hover{background:#f4f6f8}.sv-table tbody tr.selected{background:#dfe4ea}.sv-table tfoot td{background:#f8fafc;border-top:1px solid #b8c0ca;font-weight:700}.sv-swatch{vertical-align:-1px;border-radius:2px;width:9px;height:9px;margin-right:6px;display:inline-block}.sv-pill{border-radius:3px;padding:1px 6px;font-size:9.5px;font-weight:700;display:inline-block}.sv-pill.good{color:#2e6b31;background:#dcefd9}.sv-pill.bad{color:#8b1414;background:#f6dada}.sv-pill.neutral{color:#475569;background:#e5e8ec}.sv-pos,.sv-table td.sv-pos{color:#2e6b31;font-weight:700}.sv-neg,.sv-table td.sv-neg{color:#8b1414;font-weight:700}.sv-stops{flex-direction:column;gap:0;min-height:0;display:flex;overflow-y:auto}.sv-stop{color:#1e293b;grid-template-columns:18px 1fr auto;align-items:center;gap:8px;min-height:26px;font-size:10.5px;display:grid;position:relative}.sv-stop-dot{z-index:1;background:#fff;border:3px solid;border-radius:50%;justify-self:center;width:12px;height:12px}.sv-stop-line{opacity:.35;background:currentColor;width:2px;position:absolute;top:0;bottom:0;left:8px}.sv-stop-dwell{color:#64748b;font-size:9.5px}.sv-detail-list{grid-template-columns:auto 1fr;gap:3px 12px;margin-bottom:10px;font-size:10.5px;display:grid}.sv-detail-list dt{color:#64748b}.sv-detail-list dd{color:#0f172a;margin:0;font-weight:600}.sv-bars{border-bottom:1px solid #cbd5e1;align-items:flex-end;gap:3px;height:170px;padding:0 0 16px;display:flex;position:relative}.sv-bar-col{flex:1 1 0;justify-content:center;align-items:flex-end;min-width:0;height:100%;display:flex;position:relative}.sv-bar{background:#5b7fa6;border-radius:1px 1px 0 0;width:80%}.sv-bar.peak{background:#1d4f86}.sv-bar.night{background:#94a9c2}.sv-bar.off{background:#e5e8ec}.sv-bar-label{color:#64748b;font-size:8.5px;position:absolute;bottom:-15px}.sv-legend{color:#475569;gap:12px;margin-top:20px;font-size:9.5px;display:flex}.sv-form{grid-template-columns:1fr 120px;align-items:center;gap:5px 10px;font-size:10.5px;display:grid}.sv-form-section{color:#334155;text-transform:uppercase;letter-spacing:.3px;border-bottom:1px solid #eef1f4;grid-column:1/-1;margin-top:6px;padding-bottom:2px;font-size:10px;font-weight:700}.sv-form label{color:#1e293b}.sv-form input{text-align:right;font-variant-numeric:tabular-nums;border:1px solid #b8c0ca;border-radius:2px;padding:2px 6px;font-size:10.5px}.sv-btn{cursor:pointer;color:#1f2937;background:#fff;border:1px solid #b8c0ca;border-radius:2px;padding:3px 10px;font-size:10.5px}.sv-btn:hover{background:#f4f6f8}.sv-btn.primary{color:#fff;background:#17375e;border-color:#17375e}.sv-seg{border:1px solid #b8c0ca;border-radius:3px;display:inline-flex;overflow:hidden}.sv-seg button{cursor:pointer;color:#1f2937;background:#fff;border:none;padding:3px 10px;font-size:10.5px}.sv-seg button+button{border-left:1px solid #b8c0ca}.sv-seg button.active{background:#dfe4ea;font-weight:700}.sv-stack{border-radius:2px;height:18px;margin:6px 0 8px;display:flex;overflow:hidden}.sv-stack span{height:100%;display:block}.sv-actions{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.sv-action{text-align:left;cursor:pointer;background:#f8fafc;border:1px solid #d2d7de;border-radius:4px;flex-direction:column;gap:3px;padding:10px 12px;display:flex}.sv-action:hover{background:#eef2f6;border-color:#9aa3ad}.sv-action strong{color:#0f172a;font-size:11.5px}.sv-action span{color:#64748b;font-size:10px}.sv-prose{color:#1e293b;font-size:11px;line-height:1.5}.sv-prose h4{color:#0f172a;margin:10px 0 2px;font-size:11.5px}.sv-prose h4:first-child{margin-top:0}.sv-prose ul{margin:2px 0;padding-left:18px}.sv-form select{background:#fff;border:1px solid #b8c0ca;border-radius:2px;padding:2px 4px;font-size:10.5px}.sv-prose p{margin:0}.sv-muted{color:#64748b;font-size:10.5px}.sv-btn.teal{color:#fff;white-space:nowrap;background:#0f6b5c;border-color:#0f6b5c;font-weight:700}.sv-search,.sv-select{background:#fff;border:1px solid #b8c0ca;border-radius:3px;min-width:200px;padding:3px 8px;font-size:10.5px}.sv-kpis.three{grid-template-columns:repeat(3,1fr)}.sv-tag{color:#0369a1;text-transform:uppercase;background:#e0f2fe;border-radius:3px;padding:1px 6px;font-size:9.5px;font-weight:700}.sv-callout{border-radius:3px;padding:4px 8px;font-size:10px;font-weight:700}.sv-callout.good{color:#23633a;background:#e8f6ec;border:1px solid #bfe3c9}.sv-callout.bad{color:#9b1c1c;background:#fdeeee;border:1px solid #f3c4c4}.sv-toast{color:#fff;z-index:50;background:#0c3238;border-radius:4px;padding:8px 14px;font-size:11px;position:fixed;bottom:56px;right:18px;box-shadow:0 4px 14px #00000040}.sv-pill.warn{color:#92400e;background:#fdf0d5}.sv-stat-grid{gap:6px;display:grid}.sv-stat-grid.two{grid-template-columns:1fr 1fr}.sv-stat-grid.four{grid-template-columns:repeat(4,1fr)}.sv-stat-grid.five{grid-template-columns:repeat(5,1fr)}.sv-stat{background:#fff;border:1px solid #e2e7ed;border-radius:4px;min-width:0;padding:5px 7px}.sv-stat.centered{text-align:center}.sv-stat-label{text-transform:uppercase;color:#64748b;letter-spacing:.2px;font-size:8.5px;font-weight:700}.sv-stat-value{color:#0f172a;white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:800;overflow:hidden}.sv-stat-value.good{color:#2e7d32}.sv-stat-value.bad{color:#8b1414}.sv-stat-value.warn{color:#c2620a}.sv-stat-value.blue{color:#0369a1}.sv-stat-note{color:#64748b;font-size:9px}.sv-day-grid{flex:1;grid-template-columns:repeat(3,1fr);gap:10px;min-height:0;display:grid}.sv-day-col{background:#fff;border:1px solid #d2d7de;border-radius:6px;flex-direction:column;gap:8px;min-width:0;padding:10px;display:flex}.sv-day-col.active{border-color:#2563eb;box-shadow:inset 0 0 0 1px #2563eb}.sv-day-head{align-items:center;gap:8px;display:flex}.sv-day-head .sv-btn{margin-left:auto}.sv-day-icon{font-size:20px}.sv-day-title{color:#0f172a;font-size:12.5px;font-weight:700}.sv-day-sub{color:#64748b;font-size:9.5px}.sv-day-section{background:#f8fafc;border:1px solid #e5eaf0;border-radius:5px;flex-direction:column;gap:5px;padding:7px 8px;display:flex}.sv-day-section-title{text-transform:uppercase;color:#334155;letter-spacing:.2px;justify-content:space-between;align-items:center;font-size:9.5px;font-weight:800;display:flex}.sv-field-grid{grid-template-columns:repeat(auto-fit,minmax(90px,1fr));gap:6px;display:grid}.sv-field-grid label{color:#475569;flex-direction:column;gap:2px;font-size:9.5px;display:flex}.sv-field-grid input{background:#fff;border:1px solid #b8c0ca;border-radius:3px;min-width:0;padding:3px 6px;font-size:11px;font-weight:600}.sv-field-grid small{color:#64748b;font-size:9px}.sv-slider-row{flex-direction:column;display:flex}.sv-slider-label{color:#1e293b;justify-content:space-between;font-size:10.5px;display:flex}.sv-slider-row input{accent-color:#2563eb;width:100%}.sv-mini-bars{align-items:flex-end;gap:2px;height:64px;padding-bottom:12px;display:flex;position:relative}.sv-mini-slot{background:#eef2f6;border-radius:1px;flex:1;align-items:flex-end;height:100%;display:flex}.sv-mini-slot span{border-radius:1px;width:100%}.sv-mini-axis{color:#64748b;justify-content:space-between;font-size:8px;display:flex;position:absolute;bottom:0;left:0;right:0}.sv-mini-legend{text-transform:none;color:#475569;align-items:center;gap:4px;font-size:9px;font-weight:400;display:inline-flex}.sv-mini-legend i{border-radius:2px;width:8px;height:8px;display:inline-block}.sv-route-list{flex:1;gap:6px;overflow-y:auto}.sv-route-legend{text-transform:uppercase;color:#475569;border-bottom:1px solid #eef1f4;grid-template-columns:300px 1fr auto;gap:12px;padding:0 4px 4px;font-size:9.5px;font-weight:800;display:grid}.sv-route-row{border:1px solid #e5eaf0;border-radius:6px;grid-template-columns:300px 1fr auto;align-items:center;gap:12px;padding:10px 12px;display:grid}.sv-route-info{min-width:0}.sv-route-name{color:#0f172a;align-items:center;gap:8px;margin-bottom:6px;font-size:12px;display:flex}.sv-route-name strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sv-route-code{background:#f8fafc;border:1px solid;border-radius:3px;flex-shrink:0;padding:1px 5px;font-size:10px;font-weight:700;font-family:Consolas,monospace!important}.sv-route-meta{color:#475569;align-items:center;gap:6px;font-size:10px;display:flex}.sv-stepper{border:1px solid #cbd5e1;border-radius:3px;align-items:center;display:inline-flex}.sv-stepper button{cursor:pointer;background:#f1f3f5;border:none;width:18px;height:18px}.sv-stepper b{text-align:center;min-width:22px;font-size:11px}.sv-route-strip{justify-content:space-between;align-items:flex-start;min-width:0;display:flex;position:relative}.sv-route-line{background:var(--route);border-radius:2px;height:4px;position:absolute;top:10px;left:30px;right:30px}.sv-route-stop{z-index:1;flex-direction:column;flex:1 1 0;align-items:center;gap:4px;min-width:0;display:flex;position:relative}.sv-route-num{background:var(--route);color:#fff;border-radius:4px;justify-content:center;align-items:center;width:22px;height:22px;font-size:10.5px;font-weight:800;display:flex;position:relative}.sv-route-num.hub{outline-offset:2px;outline:2px solid #ef4444}.sv-route-num i{border:1px solid #fff;border-radius:50%;width:7px;height:7px;position:absolute;top:-4px;right:-4px}.sv-route-stop-name{color:#334155;text-align:center;-webkit-line-clamp:3;-webkit-box-orient:vertical;max-width:96px;font-size:9px;line-height:1.15;display:-webkit-box;overflow:hidden}.sv-manual-row{flex-direction:row;align-items:center;gap:10px;font-size:11px}.sv-manual-row input{text-align:right;border:1px solid #b8c0ca;border-radius:3px;width:120px;padding:3px 6px;font-weight:700}.sv-cost-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.sv-cost-grid.muted{opacity:.55}.sv-cost-head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;display:flex}.sv-cost-head>div{flex:1}.sv-cost-icon{font-size:22px}.sv-cost-pill{white-space:nowrap;background:#f8fafc;border:1px solid #dde3ea;border-radius:4px;padding:3px 8px;font-size:12px;font-weight:800}.sv-cost-pill small{color:#64748b;font-weight:400}.sv-cost-fields{grid-template-columns:1fr 1fr;gap:6px 18px;display:grid}.sv-cost-fields label{color:#1e293b;justify-content:space-between;align-items:center;gap:8px;font-size:11px;display:flex}.sv-unit-input{background:#fff;border:1px solid #b8c0ca;border-radius:3px;align-items:center;display:inline-flex}.sv-unit-input input{text-align:right;background:0 0;border:none;width:64px;padding:3px 6px;font-size:11.5px;font-weight:700}.sv-unit-input em{color:#64748b;min-width:30px;padding-right:6px;font-size:9px;font-style:normal}.sv-stack.labeled{height:22px}.sv-stack.labeled span{color:#fff;white-space:nowrap;justify-content:center;align-items:center;font-size:10px;font-weight:700;display:flex;overflow:hidden}.sv-results{flex-direction:column;min-height:0;display:flex;overflow:hidden}.sv-results>main{flex:1;min-height:0}.sv-stale{color:#7a4b00;background:#fff7e0;border-bottom:1px solid #f4d488;justify-content:space-between;align-items:center;gap:12px;padding:6px 12px;font-size:11px;display:flex}.sv-route-chips{flex-wrap:wrap;gap:4px;display:flex}.sv-route-chips button{cursor:pointer;color:#1f2937;background:#fff;border:1px solid #cbd5e1;border-radius:12px;align-items:center;gap:5px;padding:2px 9px;font-size:10px;display:inline-flex}.sv-route-chips button i{background:var(--route,#94a3b8);border-radius:50%;width:8px;height:8px}.sv-route-chips button.active{color:#fff;background:#1f2a37;border-color:#1f2a37;font-weight:700}.sv-timetable td{vertical-align:top}.sv-table td.sv-minutes{white-space:normal;flex-wrap:wrap;gap:3px 6px;display:flex}.sv-minutes span{background:#f1f4f7;border-radius:2px;padding:0 3px;font-size:10.5px;font-family:Consolas,monospace!important}.sv-time-axis{color:#64748b;height:14px;font-size:8.5px;font-weight:400;position:relative}.sv-time-axis span{position:absolute;transform:translate(-50%)}.sv-gantt-area{padding-left:110px}.sv-area-chart{border-bottom:1px solid #cbd5e1;align-items:flex-end;gap:1px;height:60px;display:flex}.sv-area-chart span{background:#5b7fa6;border-radius:1px 1px 0 0;flex:1}.sv-gantt{flex:1;min-height:0;overflow-y:auto}.sv-gantt .sv-time-axis{background:#fff;margin-left:110px;position:sticky;bottom:0}.sv-gantt-row{align-items:center;height:15px;display:flex}.sv-gantt-label{color:#334155;flex-shrink:0;align-items:center;gap:5px;width:110px;font-size:9.5px;display:flex;font-family:Consolas,monospace!important}.sv-gantt-label i{border-radius:2px;width:8px;height:8px}.sv-gantt-track{background:repeating-linear-gradient(90deg,#f8fafc 0 calc(10% - 1px),#eef1f4 calc(10% - 1px) 10%);flex:1;height:11px;position:relative}.sv-gantt-track.thin{height:9px}.sv-gantt-deadhead{background:#cbd5e1;height:3px;position:absolute;top:4px}.sv-gantt-bar{border-radius:1px;position:absolute;top:0;bottom:0}.sv-svg{flex:1;width:100%;height:auto;min-height:0}.sv-load-chart{border-bottom:1px solid #cbd5e1;flex:1;align-items:flex-end;gap:8px;min-height:220px;padding-bottom:46px;display:flex;position:relative}.sv-load-capacity{color:#c93b3b;text-align:right;border-top:1.5px dashed #c93b3b;margin-bottom:46px;font-size:9px;position:absolute;left:0;right:0}.sv-load-col{flex:1;justify-content:center;align-items:flex-end;gap:2px;height:100%;display:flex;position:relative}.sv-load-bar{border-radius:1px 1px 0 0;width:38%}.sv-load-bar.peak{background:#1d4f86}.sv-load-bar.valley{background:#9fb6d0}.sv-load-label{color:#475569;text-align:center;-webkit-line-clamp:3;-webkit-box-orient:vertical;width:100%;font-size:8.5px;line-height:1.1;display:-webkit-box;position:absolute;bottom:-44px;overflow:hidden}.sv-hist{flex-direction:column;gap:5px;display:flex}.sv-hist-row{color:#334155;grid-template-columns:64px 1fr 24px;align-items:center;gap:8px;font-size:10px;display:grid}.sv-hist-bar{background:#f1f4f7;height:10px}.sv-hist-bar span{background:#5b7fa6;height:100%;display:block}.sv-replay-bar{background:#fff;border:1px solid #d2d7de;border-radius:4px;align-items:center;gap:10px;padding:6px 10px;font-size:12px;display:flex}.sv-replay-bar input{accent-color:#17375e;flex:1}.sv-replay-canvas{isolation:isolate;flex:1;min-height:380px;padding:0;position:relative;overflow:hidden}.sv-replay-canvas>*{height:100%}.sv-stage-maximized{z-index:45;position:fixed;inset:0}.sv-replay-canvas>.sv-map-maximize{z-index:1000;height:auto;padding:4px 7px;font-size:15px;position:absolute;top:10px;right:10px}.sv-stage-maximized .sv-replay-canvas{min-height:0}.sv-replay-mini{color:#0f172a;flex-shrink:0;align-items:center;gap:6px;font-size:11px;display:inline-flex}.sv-replay-mini .sv-btn{padding:2px 8px;line-height:1.2}.sv-diverge{background:#f1f4f7;height:10px;position:relative}.sv-diverge:after{content:"";background:#94a3b8;width:1px;position:absolute;top:-2px;bottom:-2px;left:50%}.sv-diverge span{position:absolute;top:0;bottom:0}.sv-instructions{color:#1f2937;max-width:720px;padding:20px 26px;font-size:13px;line-height:1.55}.sv-instructions h2{color:#17375e;margin:0 0 8px;font-size:17px}.sv-instructions ol{margin:10px 0 0;padding-left:20px}.sv-instructions li+li{margin-top:8px}.sv-missing{color:#7f1d1d;background:#fdecec;border-bottom-color:#f2b8b8}.sv-missing ul{margin:4px 0 0;padding-left:18px}.sp-bar{color:#17375e;background:#eef3fb;border-color:#c6d6ef;flex-direction:row;align-items:center;gap:10px;font-size:12px}.sp-changes{font-size:12px;line-height:1.5}.sp-changes ul{margin:4px 0 0;padding-left:18px}.sp-changes b{color:#b45309}.sp-review{flex-direction:row;min-height:0;font-size:12.5px}.sp-value{color:#0f172a;font-size:13px;font-weight:700}.sp-changed{outline-offset:-1px;background:#fffbeb;outline:2px solid #f59e0b}.sp-was{color:#b45309;font-size:10.5px;font-weight:600}@media (width<=720px){.sp-review{flex-direction:column}}.driver-layer{width:auto;max-width:none;height:auto;max-height:none;color:inherit;pointer-events:none;background:0 0;border:0;margin:0;padding:0;position:fixed;inset:0;overflow:visible}.driver-layer::backdrop{display:none}.driver-layer .driver-popover{pointer-events:auto}.driver-popover{all:unset;font-family:var(--driver-popover-font-family,"Helvetica Neue", Inter, ui-sans-serif, "Apple Color Emoji", Helvetica, Arial, sans-serif);box-sizing:border-box;color:#2d2d2d;z-index:1000000000;background-color:#fff;border-radius:5px;min-width:250px;max-width:300px;margin:0;padding:15px;position:fixed;top:0;right:0;box-shadow:0 1px 10px #0006}.driver-popover-title{zoom:1;margin:0;font-size:19px;font-weight:700;line-height:1.5;display:block;position:relative}.driver-popover-close-btn{all:unset;cursor:pointer;color:#d2d2d2;z-index:1;text-align:center;width:32px;height:28px;font-size:18px;font-weight:500;transition:color .2s;position:absolute;top:0;right:0}.driver-popover-close-btn:hover,.driver-popover-close-btn:focus-visible{color:#2d2d2d}.driver-popover-title[style*=block]+.driver-popover-description{margin-top:5px}.driver-popover-description{zoom:1;margin-bottom:0;font-size:14px;font-weight:400;line-height:1.5}.driver-popover-footer{text-align:right;zoom:1;justify-content:space-between;align-items:center;margin-top:15px;display:flex}.driver-popover-progress-text{color:#727272;zoom:1;font-size:13px;font-weight:400}.driver-popover-footer-btn{all:unset;box-sizing:border-box;color:#2d2d2d;cursor:pointer;zoom:1;background-color:#fff;border:1px solid #ccc;border-radius:3px;outline:0;padding:3px 7px;font-size:12px;line-height:1.3;text-decoration:none;display:inline-block}.driver-popover-footer .driver-popover-btn-disabled{opacity:.5;pointer-events:none}.driver-popover-footer-btn:hover,.driver-popover-footer-btn:focus{background-color:#f7f7f7}.driver-popover-navigation-btns{flex-grow:1;justify-content:flex-end;display:flex}.driver-popover-navigation-btns button+button{margin-left:4px}.driver-popover-arrow{content:"";border:5px solid #fff;position:absolute}.driver-popover-arrow-side-over{display:none}.driver-popover-arrow-side-left{border-top-color:#0000;border-bottom-color:#0000;border-right-color:#0000;left:100%}.driver-popover-arrow-side-right{border-top-color:#0000;border-bottom-color:#0000;border-left-color:#0000;right:100%}.driver-popover-arrow-side-top{border-bottom-color:#0000;border-left-color:#0000;border-right-color:#0000;top:100%}.driver-popover-arrow-side-bottom{border-top-color:#0000;border-left-color:#0000;border-right-color:#0000;bottom:100%}.driver-popover-arrow-side-center,.driver-popover-arrow-none{display:none}.driver-active .driver-overlay{pointer-events:none}.driver-active.driver-no-scroll{overflow:hidden}.driver-active *{pointer-events:none}.driver-active .driver-active-element,.driver-active .driver-active-element *,.driver-popover,.driver-popover *{pointer-events:auto}@keyframes animate-fade-in{0%{opacity:0}to{opacity:1}}.driver-fade .driver-overlay{animation:animate-fade-in var(--driver-animation-duration,.4s) ease-in-out}.driver-fade .driver-popover{animation:animate-fade-in var(--driver-animation-duration,.4s)}.driver-active-element-parent-no-scroll{overflow:hidden!important}.driver-no-interaction,.driver-no-interaction *{pointer-events:none!important}
