:root{color-scheme:dark;--bg:#07141c;--line:rgba(112,185,195,.14);--line2:rgba(130,209,217,.26);--text:#dcebf0;--muted:#718a9b;--cyan:#82dadb;--teal:#77d6ba;--amber:#efb46b;--red:#e47e76;--panel:#0b1924;--mono:'DM Mono',Consolas,monospace;--ui:Manrope,'Segoe UI',Arial,sans-serif}
*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;background:var(--bg);color:var(--text);font-family:var(--ui)}button,input{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible{outline:2px solid var(--cyan);outline-offset:3px}#app{width:100%;height:100vh;height:100dvh;display:grid;grid-template-rows:66px minmax(0,1fr) 104px;overflow:hidden;background:radial-gradient(circle at 55% 37%,#16364a 0,#07141c 56%)}.grain{pointer-events:none;position:absolute;inset:0;z-index:20;opacity:.15;background-image:url('data:image/svg+xml,%3Csvg viewBox="0 0 150 150" xmlns="http://www.w3.org/2000/svg"%3E%3Cfilter id="n"%3E%3CfeTurbulence type="fractalNoise" baseFrequency=".9" numOctaves="3" stitchTiles="stitch"/%3E%3C/filter%3E%3Crect width="100%25" height="100%25" filter="url(%23n)" opacity=".22"/%3E%3C/svg%3E')}.topbar{grid-row:1;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line2);padding:0 22px;position:relative;z-index:15;background:linear-gradient(90deg,#081923 0,#0c1c27 51%,#081722 100%)}.brand{display:flex;gap:12px;align-items:center;min-width:290px}.brand img{filter:drop-shadow(0 0 14px #37e0d366)}.brand strong{font-family:var(--ui);font-size:15px;letter-spacing:1.2px;font-weight:800;white-space:nowrap}.brand-slash{color:var(--teal)}.brand small{display:block;font:9px var(--mono);letter-spacing:1.15px;margin-top:4px;color:var(--muted)}.faint{opacity:.6}.top-center{display:flex;align-items:center;gap:12px;font:10px var(--mono);letter-spacing:1px;color:#8ba9b5;white-space:nowrap}.pulse-dot{height:7px;width:7px;border-radius:50%;background:#81e1c0;box-shadow:0 0 12px #66dbad;animation:pulse 2s infinite}.separator{color:#3c6070}.top-actions{display:flex;align-items:center;gap:11px}.clock{font:11px var(--mono);color:#98c9cf;border-right:1px solid var(--line2);padding-right:15px;margin-right:4px}.icon-button{background:#102432;color:#a0c5cf;display:grid;place-items:center;border:1px solid var(--line2);width:31px;height:31px;border-radius:4px}.icon-button:hover{background:#193a48;color:#d3fff5}.icon-button svg{height:18px;width:18px}.stage{grid-row:2;display:grid;grid-template-columns:300px minmax(0,1fr) 294px;min-height:0;position:relative}.render-area{grid-column:2;grid-row:1;position:relative;overflow:hidden;background:radial-gradient(ellipse at 50% 40%,#1c4653 0,#0b2231 32%,#06131e 100%);cursor:grab}.render-area:active{cursor:grabbing}#viewport{position:absolute;inset:0;width:100%;height:100%;display:block;touch-action:none}.ambient-glow{position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(6,18,25,.52),transparent 27%,transparent 78%,rgba(7,17,24,.34)),linear-gradient(180deg,rgba(5,16,23,.4),transparent 33%,transparent 71%,rgba(6,17,24,.54));box-shadow:inset 0 0 110px 14px rgba(3,10,17,.6)}.panel{position:relative;z-index:4;overflow:hidden;background:linear-gradient(145deg,#0c1c28ef,#0a1722f5 45%,#0b1d29f2);border-color:var(--line2);border-style:solid;border-width:0}.left-panel{grid-column:1;grid-row:1;border-right-width:1px}.right-panel{grid-column:3;grid-row:1;border-left-width:1px}.panel-scroll{height:calc(100% - 39px);overflow-y:auto;padding:8px 15px 26px;scrollbar-width:thin;scrollbar-color:#284c5a transparent}.panel-scroll::-webkit-scrollbar{width:4px}.panel-scroll::-webkit-scrollbar-thumb{background:#214856}.panel-bottom{height:39px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 15px;color:#759ba7;font:9px var(--mono);white-space:nowrap}.panel-bottom span{font-size:8px;color:#517584}.section-head{border-bottom:1px solid var(--line2);font:10px var(--mono);font-weight:500;letter-spacing:1.2px;color:#c0d8db;padding:17px 1px 12px;margin-bottom:10px;display:flex;align-items:center;gap:10px}.section-head span:first-child{color:#59c2be;font-size:11px}.section-head.second{margin-top:14px}.right-deco{margin-left:auto;color:#668d9a!important;font-size:9px!important}.focus-option{width:100%;display:flex;align-items:center;gap:11px;text-align:left;color:#b7ccd3;background:transparent;border:1px solid transparent;min-height:48px;padding:6px 9px;position:relative}.focus-option.active{background:linear-gradient(90deg,rgba(62,163,170,.17),rgba(50,157,172,.04));border-color:#3e8790}.focus-option:hover:not(.active){background:#142b37}.focus-option .focus-icon{width:26px;color:#83d5d1;font-size:22px;text-align:center;font-family:serif}.focus-option b{font-weight:700;display:block;font-size:11px;letter-spacing:.14px}.focus-option small{display:block;margin-top:3px;color:#6c8a9b;font:9px var(--mono)}.focus-option .arrow{margin-left:auto;color:#6cb6be;font-size:13px}.wing-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:8px 0}.wing-button{border:1px solid #254553;background:linear-gradient(145deg,#112633,#0c1d29);color:#bfd5da;min-height:50px;text-align:left;padding:8px 9px;display:flex;gap:8px;align-items:center}.wing-button:hover,.wing-button.active{border-color:#6dd4c8;background:#1c3b43}.wing-button .wing-dot{width:7px;height:7px;flex-shrink:0;border-radius:2px;box-shadow:0 0 12px currentColor}.wing-button b{font:10px var(--mono);display:block;letter-spacing:.4px}.wing-button small{font:8px var(--mono);color:#6a8997;display:block;margin-top:3px}.slider-line{display:flex;justify-content:space-between;align-items:center;font-size:10px;color:#a4c1cd;font-weight:600;margin-top:13px}.slider-line output{color:var(--cyan);font:11px var(--mono)}.range{width:100%;height:15px;margin:7px 0 3px;appearance:none;background:transparent;cursor:pointer}.range::-webkit-slider-runnable-track{height:3px;background:linear-gradient(90deg,#3b9b9f,#31617b 78%,#263f52)}.range::-webkit-slider-thumb{appearance:none;height:12px;width:8px;background:#a5f0e5;border:2px solid #123e4e;margin-top:-4.5px;box-shadow:0 0 0 2px #4fabb555}.range::-moz-range-track{height:3px;background:#4a939e}.range::-moz-range-thumb{border:0;border-radius:1px;background:#9cdddb;height:12px;width:8px}.toggle-row{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);margin-top:10px;padding-top:10px}.toggle-row label{font:9px var(--mono);letter-spacing:.36px;color:#a4bac7}.switch{appearance:none;width:32px;height:16px;border-radius:15px;border:1px solid #335365;background:#1a303a;cursor:pointer;position:relative;margin:0;transition:.2s}.switch::before{content:'';width:10px;height:10px;position:absolute;left:2px;top:2px;background:#597987;border-radius:50%;transition:.2s}.switch:checked{background:#1b625e;border-color:#53b7aa}.switch:checked::before{background:#aaf8df;transform:translateX(15px)}.incident-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}.incident-grid button{min-height:34px;font:9px var(--mono);color:#d2b5a5;background:#3d292b44;border:1px solid #855b5b88}.incident-grid button:hover,.incident-grid button.active{background:#5f3037;border-color:#dc7870;color:#fff}.action-row{display:flex;gap:7px;margin-top:8px}.outline-btn{flex:1;background:transparent;border:1px solid #386274;color:#84bbc7;font:9px var(--mono);letter-spacing:.2px;min-height:33px;padding:7px}.outline-btn:hover{background:#1d3c47}.time-row{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.time-btn{border:1px solid #304c5b;background:#0c2330;color:#7399a7;height:30px;font:10px var(--mono)}.time-btn.active,.time-btn:hover{background:#1a494b;color:#a7fff0;border-color:#58a8ab}.viewport-top-left{position:absolute;left:27px;top:24px;pointer-events:none;text-shadow:0 2px 10px #051015}.micro-label{font:10px var(--mono);color:#85a9ba;letter-spacing:1.4px}.hud-bright{color:var(--teal)}.view-title{font-size:22px;letter-spacing:1.5px;font-weight:700;margin:9px 0 8px;color:#d6e9ed}.viewport-top-right{position:absolute;right:22px;top:25px;display:flex;flex-direction:column;gap:7px;pointer-events:none;align-items:flex-end}.view-chip{border:1px solid #55889566;background:#0b1c28b9;padding:6px 8px;color:#86afbd;letter-spacing:1px;font:9px var(--mono)}.crosshair{position:absolute;left:50%;top:50%;width:28px;height:28px;opacity:.18;pointer-events:none;transform:translate(-50%,-50%)}.crosshair span:first-child{height:1px;width:28px;position:absolute;top:14px;background:#aeedeb}.crosshair span:last-child{height:28px;width:1px;position:absolute;left:14px;background:#aeedeb}.viewport-bottom{position:absolute;bottom:21px;left:26px;right:25px;display:flex;justify-content:space-between;align-items:end;gap:10px;pointer-events:none}.compass{font:12px var(--mono);display:flex;align-items:center;gap:12px;color:#7faabb}.north{font-size:25px;color:#8fe2d5;line-height:1;display:inline-block;transform-origin:center}.compass-text{font:9px var(--mono);color:#7da9b9}.compass-text b{color:#d5f4ef}.navigation-hint{font:9px var(--mono);color:#789ca8;display:flex;gap:6px;align-items:center;white-space:nowrap}.navigation-hint b{font-weight:400;color:#b8d5d9}.navigation-hint i{height:3px;width:3px;background:#467c8c;margin:0 6px}.minimap{position:absolute;right:21px;bottom:62px;width:184px;background:#071c29d0;border:1px solid #56879c55;padding:11px 10px;box-shadow:0 6px 35px #0004;pointer-events:none}.minimap-label,.minimap-foot{font:8px var(--mono);letter-spacing:.7px;color:#84b3bd;display:flex;justify-content:space-between}.minimap-label span{color:#62cec1}.minimap svg{width:100%;height:130px;margin:3px auto 1px;display:block}.map-ring{fill:none;stroke:#376472;stroke-width:.6;stroke-dasharray:2 3}.map-ring.inner{stroke:#3b6d75}.map-hub{fill:#174954;stroke:#63d8d4;stroke-width:1}.minimap-foot{font-size:7px;color:#628899}.world-marker-container{position:absolute;inset:0;overflow:hidden;pointer-events:none}.world-marker{position:absolute;transform:translate(-50%,-100%);background:#0b2631cc;border:1px solid #548b96a8;box-shadow:0 0 20px #061722;pointer-events:auto;padding:6px 8px 5px;color:#c5eeee;cursor:pointer;white-space:nowrap;text-align:center;font:9px var(--mono);letter-spacing:.5px;line-height:1.3;z-index:4}.world-marker:hover{background:#205160;border-color:#a1f3ea}.world-marker::after{content:'';position:absolute;top:100%;left:50%;height:9px;width:1px;background:#75d5c9}.world-marker .marker-type{display:block;color:#66bdc2;font-size:8px;margin-top:3px}.inspector{border:1px solid #315665;background:linear-gradient(145deg,#102a34,#0d222c);padding:14px 13px 12px;position:relative}.inspector::before{content:'';position:absolute;left:0;top:0;width:40px;height:2px;background:#78dfd2}.inspector-tag{color:#5fcbbe;font:9px var(--mono);letter-spacing:1px}.inspector-title{font-size:15px;line-height:1.3;font-weight:750;margin:9px 0;color:#deedf1}.inspector p{font-size:10px;line-height:1.7;color:#83a5b2;margin:0 0 13px}.inspect-meta{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line2);padding:12px 0;gap:8px}.inspect-meta small{font:8px var(--mono);display:block;color:#688d9e}.inspect-meta b{font:17px var(--mono);display:block;color:#cfe6eb;margin-top:7px}.solid-btn{display:flex;justify-content:space-between;align-items:center;width:100%;border:1px solid #66ccb9;background:#6fd5c4;color:#072f36;padding:10px 12px;font:10px var(--mono);font-weight:500;letter-spacing:.3px}.solid-btn:hover{background:#9bf0df}.solid-btn span{font-size:15px}.metrology{border:1px solid var(--line)}.telemetry-line{padding:10px 7px;display:flex;gap:10px;align-items:center;min-height:54px;border-bottom:1px solid var(--line)}.telemetry-line:last-child{border:0}.telemetry-icon{border:1px solid #36586a;background:#18303b;width:25px;height:25px;display:grid;place-items:center;color:#8ecfd3;flex:none;font-size:16px}.telemetry-data{flex:1;min-width:0}.telemetry-data small{display:block;font:8px var(--mono);color:#6e99a8;letter-spacing:.3px;white-space:nowrap}.telemetry-data strong{font:19px var(--mono);letter-spacing:-1px;color:#d9f4ee;display:block;margin-top:5px}.telemetry-data em,.metric em{font:10px var(--mono);font-style:normal;color:#83b8c0;letter-spacing:0}.trend{font:8px var(--mono);color:#6bd5b0;white-space:nowrap}.chart-head{margin-top:16px;display:flex;justify-content:space-between;color:#83afb8;font:9px var(--mono)}.chart-head span:last-child{font-size:8px;color:#628996}#thermal-chart{display:block;width:100%;height:112px;margin-top:6px;background:linear-gradient(180deg,#10273588,#0b1b2750);border:1px solid var(--line)}.robot-logistics{display:grid;grid-template-columns:repeat(3,1fr);gap:4px}.robot-logistics div{padding:9px 5px;background:#132938;border:1px solid var(--line);text-align:center}.robot-logistics span{display:block;color:#759bac;font:8px var(--mono);min-height:23px}.robot-logistics strong{display:block;margin-top:6px;color:#bedde2;font:14px var(--mono)}.nitrogen{margin-top:13px}.nitrogen-row{display:flex;justify-content:space-between;color:#85aab7;font:9px var(--mono)}.nitrogen-row strong{color:#91dfd6}.meter{height:5px;background:#294454;margin-top:8px;overflow:hidden}.meter>div{height:100%;background:linear-gradient(90deg,#448ca6,#86ead7);transition:width .3s}.events{min-height:94px;max-height:112px;overflow-y:auto;color:#94afb7;font:8px var(--mono);line-height:2}.events span{color:#5cb7bd;margin-right:10px}.export-btn{margin-top:14px;width:100%;color:#a1d6d6}.metric-bar{grid-row:3;position:relative;z-index:5;background:linear-gradient(90deg,#0a1b27,#0c2430,#081a24);border-top:1px solid #396475;display:grid;grid-template-columns:1fr 1fr 1fr 1fr 1.3fr;padding:13px 16px 13px 26px;gap:0}.metric{padding:2px 19px;border-right:1px solid #2d4f5a;min-width:0}.metric:first-child{padding-left:2px}.metric:last-child{border-right:0}.metric small{display:block;font:9px var(--mono);color:#6e95a4;letter-spacing:.5px;white-space:nowrap}.metric strong{display:block;margin-top:8px;color:#d0f0ed;font-size:27px;font-weight:700;letter-spacing:1px;line-height:1}.metric strong em{font-size:13px}.metric span{display:block;margin-top:7px;color:#6d929e;font:9px var(--mono);letter-spacing:.7px;white-space:nowrap}#status-footer{font-size:23px;color:#81dbb5}#toast{position:absolute;left:50%;bottom:124px;transform:translateX(-50%);border:1px solid #6bbcb6;background:#112e37;padding:12px 20px;font:10px var(--mono);color:#c5f1ed;z-index:40;box-shadow:0 8px 30px #0007;opacity:0;transition:opacity .2s;pointer-events:none}#toast.visible{opacity:1}.modal{position:absolute;inset:0;background:#03111cdb;z-index:30;display:grid;place-items:center}.modal[hidden]{display:none}.modal-body{max-width:500px;border:1px solid #568995;padding:26px;background:#122935;box-shadow:0 20px 90px #0009}.modal-head{font:14px var(--mono);color:#a4efde;display:flex;justify-content:space-between}.modal-head button{background:none;border:0;color:#b5d2d7;font-size:23px}.modal p{line-height:1.9;font-size:12px;color:#a3bdc8}.modal code{color:#75c5c8}.loading-screen{position:fixed;inset:0;z-index:50;display:flex;align-items:center;justify-content:center;flex-direction:column;background:radial-gradient(circle at 50% 40%,#1e3b4a,#05121c 65%);text-align:center;transition:opacity .65s ease}.loading-screen.fade{opacity:0;pointer-events:none}.loading-screen img{filter:drop-shadow(0 0 35px #71dace)}.loading-screen h1{letter-spacing:4px;font-size:26px;margin:25px 0 10px}.loading-screen h1 span{color:#76d5c6}.loading-screen p{font:10px var(--mono);letter-spacing:1.5px;color:#8bb4bc}.loading-screen small{position:absolute;bottom:40px;font:9px var(--mono);color:#557e8f;letter-spacing:1px}.loading-line{margin-top:25px;height:2px;width:240px;background:#294b57;overflow:hidden}.loading-line i{display:block;height:100%;width:30%;background:#7fe6d7;animation:loading 1.3s infinite linear}@keyframes loading{from{transform:translateX(-110%)}to{transform:translateX(340%)}}@keyframes pulse{50%{opacity:.3;box-shadow:0 0 1px #66dbad}}@media(max-width:1390px){.stage{grid-template-columns:270px minmax(0,1fr) 264px}.panel-scroll{padding-left:11px;padding-right:11px}.top-center{font-size:9px;gap:7px}.navigation-hint{display:none}.minimap{width:155px}.metric small{font-size:8px}.metric{padding-left:11px;padding-right:11px}}@media(max-width:1050px){.stage{grid-template-columns:242px minmax(0,1fr)}.right-panel{display:none}.render-area{grid-column:2}.metric-bar{grid-template-columns:repeat(5,1fr)}.metric strong{font-size:21px}.metric span{font-size:7px}.top-center{display:none}}@media(max-width:650px){#app{grid-template-rows:58px minmax(0,1fr) 78px}.stage{grid-template-columns:minmax(0,1fr)}.left-panel{display:none}.render-area{grid-column:1}.brand{min-width:0}.brand strong{font-size:11px}.brand small{font-size:7px;letter-spacing:.4px}.brand img{width:32px}.clock{display:none}.topbar{padding:0 11px}.viewport-top-left{top:19px;left:14px}.view-title{font-size:15px}.viewport-top-right{right:13px;top:19px}.view-chip{font-size:7px}.minimap{bottom:60px;right:10px;width:126px}.minimap svg{height:100px}.metric-bar{padding:10px;grid-template-columns:repeat(3,1fr)}.metric{padding:0 8px}.metric:nth-child(n+4){display:none}.metric small{font-size:7px;white-space:normal}.metric strong{font-size:18px;margin-top:6px}.metric span{font-size:7px;white-space:normal}.viewport-bottom{left:13px}.view-chip:nth-child(2){display:none}}

.inspection-modes{display:flex;gap:6px}.inspection-modes button{background:#102634;color:#7595a6;border:1px solid #2f5362;font:9px var(--mono);height:31px;flex:1}.inspection-modes button.active,.inspection-modes button:hover{color:#b4efdc;border-color:#63ada5;background:#1d4849}
