:root{--bg:#06141b;--panel:#0a1a21;--panel2:#10242c;--line:#213942;--muted:#74909a;--text:#e8f4f1;--teal:#72dbce;--gold:#e8ba72;--warn:#eeab62;--cool:#6daec5;--font:'Segoe UI',Inter,Arial,sans-serif}
*{box-sizing:border-box}html,body{width:100%;height:100%;margin:0;background:var(--bg);color:var(--text);font-family:var(--font);font-size:12px;overflow:hidden}button,select,input{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--teal);outline-offset:2px}.hidden{display:none!important}#app{display:flex;flex-direction:column;height:100vh;min-height:580px}.masthead{height:69px;flex:none;display:flex;align-items:center;justify-content:space-between;padding:0 23px;border-bottom:1px solid #24414a;background:#0a1a21}.identity{display:flex;gap:13px;align-items:center;width:285px;min-width:0}.mark{border:1px solid #4dada7;width:37px;height:37px;display:grid;place-items:center;color:#8ae7df;font-size:33px;line-height:1;clip-path:polygon(27% 0%,73% 0%,100% 27%,100% 73%,73% 100%,27% 100%,0% 73%,0% 27%)}.mark span{transform:translateY(-2px)}.brandcopy strong{display:block;white-space:nowrap;font-size:15px;letter-spacing:1.3px;font-weight:750}.brandcopy strong .bracket{color:#518a8c}.brandcopy small{display:block;font-size:8px;letter-spacing:1.45px;color:#71969e;margin-top:6px}.microspacer{padding:0 4px}.topcenter{display:flex;align-items:center;gap:14px;font-family:ui-monospace,Consolas,monospace;font-size:10px;letter-spacing:1px;color:#9bb5ba}.signal{width:7px;height:7px;display:inline-block;border-radius:50%;background:#73ddbb;box-shadow:0 0 12px #57dca6}.divider-line{height:14px;border-left:1px solid #38535b}.headerend{display:flex;align-items:center;gap:19px}.statuspill{border:1px solid #345348;background:#14342e;color:#9ce4cb;padding:9px 11px;display:flex;gap:9px;align-items:center;font-size:9px;font-weight:700;letter-spacing:1.05px}.iconbtn{background:#142931;color:#c9e3e0;border:1px solid #45616a;border-radius:50%;width:26px;height:26px;font-weight:700}.edition{font:9px ui-monospace,Consolas,monospace;letter-spacing:1.1px;color:#668791}
.workspace{min-height:0;flex:1;display:grid;grid-template-columns:238px minmax(350px,1fr) 325px}.leftpane{background:#0a1b23;border-right:1px solid var(--line);display:flex;flex-direction:column;min-height:0;padding:25px 14px 14px 18px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#29434b transparent}.eyebrow{color:#72979f;font-size:9px;letter-spacing:1.65px;font-weight:700;white-space:nowrap}.sideheading{display:flex;align-items:center;gap:13px}.littleline{height:1px;background:#31505a;flex:1}.sectiontitle{font-size:18px;font-weight:600;letter-spacing:-.45px;margin:17px 0 15px}.zone-list{display:flex;flex-direction:column;gap:5px}.zone{display:flex;align-items:center;width:100%;text-align:left;padding:12px 9px 12px 11px;background:transparent;border:1px solid transparent;color:#a2b6bc;gap:11px;transition:background .2s,border-color .2s}.zone:hover{background:#123039}.zone.selected{background:linear-gradient(90deg,#123e45,#10262d);border-color:#366d6c;color:#e4f7f3;box-shadow:inset 3px 0 #67ded0}.zoneicon{width:26px;height:26px;border:1px solid #31515c;display:grid;place-items:center;color:#8dc4c5;font-size:17px;flex:none}.zone.selected .zoneicon{color:#90ece0;border-color:#529d94}.zonecopy{display:block;min-width:0;flex:1}.zonecopy strong{display:block;font-size:11px;font-weight:650;letter-spacing:.2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.zonecopy small{display:block;color:#718f99;font-size:9px;letter-spacing:.8px;margin-top:5px}.zonearrow{color:#779ba1}.sidebar-section{border-top:1px solid #2a424a;margin-top:24px;padding:20px 0 0}.layer-list{display:flex;flex-direction:column;gap:5px;margin-top:12px}.layer{padding:10px 8px;display:flex;align-items:center;gap:12px;border:0;background:transparent;color:#87a4ad;text-align:left;width:100%}.layer:hover,.layer.selected{color:#bcece6;background:#152e35}.layer.selected .layericon{color:#75e5d5}.layericon{font-size:17px;min-width:20px}.layer kbd{margin-left:auto}.hintline{display:flex;align-items:center;gap:13px;color:#92adb4;margin-top:14px;font-size:11px}kbd{border:1px solid #35505b;padding:3px 6px;min-width:42px;text-align:center;color:#b7d7d7;background:#102831;font:9px ui-monospace,Consolas,monospace;border-radius:2px}.layer kbd{min-width:17px;padding:2px 4px;color:#658d95}.sidebottom{margin-top:auto;padding-top:28px;color:#8bb2ad;font:9px ui-monospace,Consolas,monospace;line-height:1.9;letter-spacing:.5px}.smallgreen{color:#81d8aa}.dimmed{color:#52727d}
.centre{display:flex;flex-direction:column;min-height:0;background:#09181f}.scenetop{height:55px;flex:none;padding:0 23px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #1f3840}.crumb{color:#8aaeb2;font-weight:700;letter-spacing:1.25px;font-size:10px}.crumb>span:first-child{color:var(--teal)}.chev{color:#486775;padding:0 8px}.scenetools{display:flex;gap:6px}.sceneTool{border:1px solid #294b54;background:#10252d;color:#a4c4c8;padding:7px 10px;display:flex;gap:9px;align-items:center}.sceneTool:hover,.sceneTool.active{border-color:#69acaa;color:#d3fff3}.viewport{position:relative;flex:1;min-height:250px;overflow:hidden;background:radial-gradient(ellipse at 52% 50%,#174655,#030c11 85%)}#scene{display:block;width:100%;height:100%;touch-action:none;cursor:grab}#scene:active{cursor:grabbing}.viewportgradient{position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,17,24,.56),transparent 24%,transparent 69%,rgba(5,22,29,.7));pointer-events:none}.floater{position:absolute;pointer-events:none}.top-left{top:26px;left:28px}.overline{letter-spacing:1.7px;font:9px ui-monospace,Consolas,monospace;color:#72bac2}.bigLocation{font-size:27px;letter-spacing:-.6px;font-weight:550;margin:6px 0}.subtitle{font:10px ui-monospace,Consolas,monospace;color:#b0d3d5;letter-spacing:1px}.top-right{top:27px;right:24px;display:flex;align-items:center;gap:12px}.reticle{font-size:28px;color:#5db5b6}.weatherline{font:10px ui-monospace,Consolas,monospace;color:#b6cdd1;margin-top:6px}.weatherline span{color:#7cf0e0}.weatherline b{color:#fff;font-weight:600}.view-center{position:absolute;top:49%;left:50%;pointer-events:none;opacity:.48}.crosshair{font:24px ui-monospace,monospace;color:#8ad9da}.viewportbottom{position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:space-between;align-items:center;padding:17px 22px;pointer-events:none}.bottomleft{color:#bdd8d9;font:9px ui-monospace,Consolas,monospace;letter-spacing:.8px}.bottomleft strong{font-weight:600;color:#9de8dc;margin:0 13px 0 5px}.tinybar{display:inline-block;width:8px;height:8px;border:1px solid #87ffe0;background:#215e56}.bottomleft #drawStats{color:#68949e}.bottomright{display:flex;gap:5px}.chip{padding:5px 8px;background:#08252dba;border:1px solid #31525b;color:#a2bcc5;font:9px ui-monospace,Consolas,monospace}.focusCard{position:absolute;left:27px;bottom:60px;width:270px;background:rgba(10,30,40,.94);border:1px solid #40868b;padding:18px 16px;box-shadow:0 10px 25px #001b}.focusClose{float:right;background:transparent;border:none;color:#cee6e4;font-size:20px}.focusCard h3{font-size:17px;margin:13px 0 6px}.focusCard #focusDesc{color:#94bac1;line-height:1.6;font-size:11px}.focusRows{border-top:1px solid #2a545d;margin-top:14px;padding-top:10px}.focusRows>div{display:flex;justify-content:space-between;margin:7px 0}.focusRows span{font-size:9px;color:#759da5;letter-spacing:.5px}.focusRows strong{font-size:11px;color:#a6f4dd}.loading{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#06151be7;z-index:4}.loadingCore{font-size:66px;color:#74e5dc;animation:spin 8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.loadingTitle{font-size:15px;letter-spacing:3px;margin:12px 0}.loadingSub{color:#82aab1;font-size:11px}.loadingTrack{width:260px;height:3px;background:#24434a;margin:23px 0}.loadingTrack div{height:100%;width:5%;background:#7ee6d6;transition:width .2s}
.scenefooter{height:180px;flex:none;border-top:1px solid #2c4650;background:#0b1d25;padding:17px 22px}.footertitle{display:flex;justify-content:space-between;align-items:flex-end}.footertitle h2{font-size:17px;letter-spacing:-.3px;font-weight:600;margin:6px 0 0}.mileage{color:#8db0b6;font:10px ui-monospace,monospace}.mileage span{padding:0 8px;color:#4c7279}.network{height:111px;padding-top:5px}#schematic{width:100%;height:109px;overflow:visible}.mapname{font:700 12px 'Segoe UI',Arial,sans-serif;fill:#a5c2c4;letter-spacing:1px}.mapdesc{font:9px ui-monospace,Consolas,monospace;fill:#72989e;letter-spacing:.5px}.mapname.selected{fill:#a9eee5}.mapsmall,.mapSmallRight{font:9px ui-monospace,monospace;fill:#567982;letter-spacing:1px}.map-node{cursor:pointer}.map-node:hover .nodeBg{stroke:#96fff1;stroke-width:2.6}.nodeBg{fill:#12353e;stroke:#49848a;stroke-width:1.5}.nodeBg.selected{fill:#17514f;stroke:#70e5d7;stroke-width:2.5}.node-line{stroke:#4b888b;stroke-width:1.5}.node-core{fill:#9ce2dc}
.rightpane{background:#0b1d25;border-left:1px solid var(--line);overflow-y:auto;scrollbar-width:thin;scrollbar-color:#31535c transparent;min-height:0}.telehead{padding:23px 19px 17px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #263e46}.telehead h2{margin:8px 0 0;font-size:18px;font-weight:600;letter-spacing:-.4px}.live{color:#85e4af;font:9px ui-monospace,Consolas,monospace;letter-spacing:1px}.metrics{display:grid;grid-template-columns:1fr 1fr;padding:11px;gap:8px}.metric{padding:13px 12px;background:linear-gradient(145deg,#133039,#102730);border:1px solid #2a464e;min-width:0}.metricLabel{color:#8aabb2;font-size:9px;letter-spacing:1.05px;font-weight:700}.metricValue{font:600 29px 'Segoe UI',Arial,sans-serif;letter-spacing:-1.2px;margin-top:7px;color:#d6f6f1;white-space:nowrap}.metricValue .unit,.miniVal .unit{font-size:12px;color:#7baab1;font-weight:500;letter-spacing:0;margin-left:3px}.metricbottom{display:flex;justify-content:space-between;gap:4px;margin:7px 0 10px;font:8px ui-monospace,Consolas,monospace;color:#83a5ac;white-space:nowrap;letter-spacing:.15px}.miniNominal{color:#72dcae}.minitrack{height:3px;background:#294650}.minitrack>span{display:block;height:100%;background:#76ded1;transition:width .4s}.powertrack>span{background:#b0cfb5}.metric.mini{grid-column:span 2;display:flex;justify-content:space-between;padding:10px 14px}.metric.mini>div{flex:1}.metric.mini>div+div{border-left:1px solid #385660;padding-left:15px}.miniVal{font-size:20px;font-weight:600;margin-top:6px;color:#d7efee}.graphsection{padding:17px 17px 13px;border-bottom:1px solid #2c414a}.graphheader{display:flex;justify-content:space-between}.graphheader>span:last-child,.graphaxis{color:#6e919c;font:8px ui-monospace,Consolas,monospace}#tempChart{width:100%;height:110px;margin-top:13px;display:block}.graphaxis{display:flex;justify-content:space-between;margin:4px 0}.controlhead{display:flex;justify-content:space-between;align-items:center;padding:18px 19px 4px}.auto{color:#63d0a4;font:8px ui-monospace,monospace}.controls{padding:3px 19px 18px}.ctrl{margin-top:17px}.ctrl label{display:flex;justify-content:space-between;align-items:center;color:#c2d6d7;font-size:11px;margin-bottom:9px}.ctrl label strong{color:#92e5da;font:600 11px ui-monospace,monospace}input[type=range]{appearance:none;width:100%;height:4px;background:linear-gradient(90deg,#5fbdb7 0%,#36676b 100%);cursor:pointer;margin:3px 0}input[type=range]::-webkit-slider-thumb{appearance:none;width:13px;height:13px;border-radius:50%;border:3px solid #8ce5d8;background:#0b3035;box-shadow:0 0 0 2px #22454b}input[type=range]::-moz-range-thumb{width:8px;height:8px;border-radius:50%;border:3px solid #8ce5d8;background:#0b3035}.switchrow{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #253e46;margin-top:16px;padding-top:14px}.switchrow strong{font-weight:550;font-size:11px}.switchrow small{display:block;color:#6e939c;font-size:10px;margin-top:5px}.switch{position:relative;display:inline-block;width:32px;height:18px;flex:none}.switch input{opacity:0;position:absolute}.switch span{display:block;width:100%;height:100%;background:#34515a;border-radius:20px;transition:background .2s}.switch span:before{content:'';position:absolute;top:3px;left:3px;width:12px;height:12px;border-radius:50%;background:#87a0a7;transition:transform .2s}.switch input:checked+span{background:#236a63}.switch input:checked+span:before{background:#9de8d8;transform:translateX(14px)}.simactions{display:flex;gap:6px;margin-top:17px}.actionbtn,.simactions select{padding:9px 8px;background:#153039;border:1px solid #345560;color:#c2dddc;font-size:10px;flex:1}.simactions select{flex:1.1;color:#84dfd0}.actionbtn:hover,.simactions select:hover{border-color:#64b3aa}.queuehead{border-top:1px solid #2c454e;padding:17px 18px 9px;display:flex;align-items:end;justify-content:space-between}.queuehead h3{font-size:15px;font-weight:600;margin:7px 0 0}.numberTag{border:1px solid #46676c;padding:6px;color:#9dbdc0;font:9px ui-monospace,monospace}.inventoryline{padding:5px 18px 12px;color:#7c9ca5;display:flex;align-items:center;gap:7px;white-space:nowrap;font:9px ui-monospace,monospace}.inventoryline strong{color:#d2e8e5}.inventorydot{color:#46717c}.missionPanel{background:#112b34;border:1px solid #2a4e58;display:flex;align-items:center;justify-content:space-between;padding:12px 10px;margin:0 18px;gap:4px}.missionPanel .muted{color:#7d9fa5;font-size:9px;letter-spacing:.5px}.stripe{color:#8cd9c4;font:8px ui-monospace,monospace}.missionProgress{width:100%;height:3px;background:#2c4d54;margin-top:8px}.missionProgress>div{height:100%;background:#7ce5da}.retrieve{display:flex;justify-content:space-between;align-items:center;width:calc(100% - 36px);margin:10px 18px 14px;padding:12px 13px;border:1px solid #68aaa4;background:#1a5554;color:#c3f8ef;font-size:10px;letter-spacing:.7px;font-weight:700}.retrieve:hover{background:#226963}.loghead{border-top:1px solid #28434c;padding:15px 18px 9px;display:flex;justify-content:space-between}.loghead>span:last-child{font:8px ui-monospace,monospace;color:#68beae}.eventlog{padding:0 18px 25px}.event{border-left:2px solid #387875;margin:8px 0;padding:3px 0 3px 11px}.event.warn{border-color:#e49f58}.event.ok{border-color:#68bf8c}.eventTitle{font:10px ui-monospace,monospace;color:#c6e3df;letter-spacing:.3px}.eventDesc{font-size:10px;color:#7697a0;margin-top:5px;line-height:1.4}.eventTime{color:#5d8089;margin-left:6px}.appfooter{height:28px;flex:none;border-top:1px solid #1e3b43;background:#091720;display:flex;align-items:center;justify-content:space-between;padding:0 18px;color:#5a7d87;font:8px ui-monospace,Consolas,monospace;letter-spacing:.8px}.modalshade{position:fixed;inset:0;background:#010a0ddd;z-index:10;display:grid;place-items:center;padding:24px}.modal{width:min(540px,100%);background:#0d2932;border:1px solid #51968e;padding:30px 38px;box-shadow:0 20px 80px #000}.modalClose{float:right;border:0;background:transparent;color:#cee;font-size:26px}.modalMark{font-size:44px;color:#7de2d4}.modal h1{font-size:28px;letter-spacing:-.5px;margin:10px 0 12px}.modal p{color:#adc4c9;font-size:12px;line-height:1.75}.modalSpecs{display:flex;border-top:1px solid #39606a;border-bottom:1px solid #39606a;margin:22px 0;padding:14px 0}.modalSpecs div{flex:1}.modalSpecs strong{font-size:24px;color:#8edfd2}.modalSpecs small{display:block;color:#7097a1;font-size:10px;margin-top:5px}.modal .retrieve{width:100%;margin:20px 0}.disclaimer{font-size:10px!important;color:#68939c!important}
@media(max-width:1150px){.workspace{grid-template-columns:188px minmax(340px,1fr) 290px}.leftpane{padding-left:10px;padding-right:9px}.headerend .edition,.topcenter{display:none}.metrics{gap:5px;padding:7px}.metric{padding:9px 7px}.metricValue{font-size:24px}.rightpane .telehead{padding:15px}.scenefooter{height:155px;padding:10px}.network{height:90px}#schematic{height:89px}.mileage{display:none}}
@media(max-width:800px){html,body{overflow:auto;height:auto}#app{height:auto;min-height:100vh}.workspace{display:flex;flex-direction:column}.leftpane{order:2;overflow:visible}.centre{order:1;height:600px}.rightpane{order:3;overflow:visible}.viewport{height:380px}.scenefooter{height:175px}.leftpane .zone-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.sidebottom{display:none}.top-right,.bottomright,.scenetools{display:none}.appfooter{font-size:7px}.appfooter span:nth-child(2){display:none}.brandcopy small{font-size:7px}.statuspill{font-size:8px}}
.metrics>.metric:nth-child(3){grid-column:span 2}
