:root{--bg:#07131c;--panel:rgba(7,19,28,.89);--panel2:rgba(11,29,40,.92);--accent:#80e7f3;--accent2:#46c9ce;--muted:#74939f;--white:#d4e4ec;--line:rgba(115,197,217,.18);--yellow:#f2bc70}
*{box-sizing:border-box}html,body{height:100%;width:100%;margin:0;overflow:hidden;background:var(--bg);color:var(--white);font-family:Inter,Segoe UI,Arial,sans-serif}button,input{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.hidden{display:none!important}#viewport{position:fixed;inset:0;width:100%;height:100%;display:block;cursor:crosshair}.scanlines{position:fixed;inset:0;z-index:1;pointer-events:none;opacity:.26;background:repeating-linear-gradient(0deg,transparent 0px,transparent 3px,rgba(0,0,0,.15) 4px);mix-blend-mode:multiply}.micro-title,.panel-heading,.range-label,.section-caption,.panel-tag,.minor-line,.topbar label,.statusbar,.edge-label,.map-header,.map-legend,.overline,.welcome-footer,.hero-subtitle{font-family:Consolas,'Courier New',monospace;letter-spacing:1.1px}.micro-title{font-size:10px;font-weight:700;color:var(--accent);display:flex;gap:10px;align-items:center;letter-spacing:1.5px}.muted{margin-left:auto;color:var(--muted)}.signal{display:inline-block;width:6px;height:6px;background:#6bf7bf;border-radius:50%;box-shadow:0 0 10px #4cf8a5;vertical-align:middle;animation:pulse 3s infinite}.signal.amber{background:#eeb86f;box-shadow:0 0 9px #eeb86f}@keyframes pulse{50%{opacity:.45}}
.topbar{position:fixed;z-index:5;top:0;left:0;right:0;height:80px;display:flex;align-items:center;justify-content:space-between;gap:25px;padding:0 30px 0 31px;background:linear-gradient(180deg,rgba(5,17,25,.99),rgba(7,20,30,.92));border-bottom:1px solid var(--line);box-shadow:0 8px 30px #040b1550}.brand{display:flex;gap:13px;align-items:center;min-width:290px}.brand-mark{width:44px;height:44px;border:1px solid #80dceb83;display:grid;place-items:center;font-size:37px;color:var(--accent);transform:rotate(-9deg);line-height:1}.brand-line{font-size:20px;letter-spacing:1.35px;font-weight:900}.brand-line span{color:var(--accent)}.brand-line small{font-size:13px;font-weight:500;color:#8eabb6}.brand-sub{font:10px Consolas,monospace;color:var(--muted);letter-spacing:1px;margin-top:5px}.top-stats{display:flex;gap:36px;align-items:center}.top-stats>div{display:grid;gap:6px;min-width:90px}.top-stats label{font-size:9px;color:var(--muted)}.top-stats strong{font-size:16px;color:#e5f5fa;letter-spacing:1px}.top-actions{display:flex;gap:6px}.top-actions button{background:#152b36;border:1px solid #5a859755;border-radius:3px;color:#b3cbd5;min-width:35px;height:35px;font-size:14px}.top-actions button:hover{background:#255367;color:#fff}.top-actions button:last-child{font-size:10px}
.leftpanel,.rightpanel{position:fixed;z-index:4;top:80px;bottom:31px;background:var(--panel);backdrop-filter:blur(17px);border-color:var(--line);border-style:solid;overflow-y:auto}.leftpanel{left:0;width:264px;border-width:0 1px 0 0;padding:26px 17px 20px}.rightpanel{right:0;width:304px;border-width:0 0 0 1px;padding:25px 20px 30px}.panel-heading{font-size:12px;font-weight:700;color:#e9f8ff;margin:14px 0 24px;letter-spacing:1.7px}.level-list{display:grid;gap:7px}.level{display:flex;align-items:center;text-align:left;gap:11px;border:1px solid transparent;border-left:2px solid transparent;background:transparent;color:#91aab5;min-height:60px;padding:8px 7px}.level:hover{background:rgba(54,174,196,.09);border-color:#58bfd433}.level.selected{background:linear-gradient(90deg,rgba(65,194,211,.20),rgba(24,52,65,.10));border:1px solid #72dcea45;border-left:2px solid var(--accent);color:#eefaff}.level-index{font-family:Consolas,monospace;font-size:18px;color:var(--accent);opacity:.7}.level-label{display:grid;gap:5px;flex:1}.level-label strong{font-size:11px;font-weight:750;letter-spacing:1px}.level-label small{font-size:10px;letter-spacing:.2px;color:#78919d}.level-depth{font-family:Consolas,monospace;font-size:10px;color:#abc2cb}.left-footer{position:relative;margin-top:27px;border-top:1px solid var(--line);padding-top:22px}.coord{font-family:Consolas,monospace;color:#e9faff;font-size:15px;letter-spacing:.8px;margin:17px 0 18px}.minor-line{font-size:9px;color:var(--muted);display:flex;justify-content:space-between;border-top:1px solid #ffffff0d;padding:10px 0;letter-spacing:.2px}.minor-line span:last-child{color:#a4c6d1}
.viewport-overlay{position:fixed;inset:80px 304px 31px 264px;z-index:2;pointer-events:none}.sight{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:30px;height:30px;opacity:.78}.sight>div{position:absolute;inset:12px;border:1px solid #b5faff;border-radius:50%;box-shadow:0 0 10px #56f9ff}.sight-h,.sight-v{position:absolute;background:#91e9f1}.sight-h{left:0;right:0;top:15px;height:1px}.sight-v{top:0;bottom:0;left:15px;width:1px}.locator{position:absolute;bottom:33px;left:28px;padding-left:16px;text-shadow:0 2px 10px #000}.vertical-line{position:absolute;left:0;top:0;bottom:2px;width:2px;background:#6bdbe2}.tag{color:#90b7bf;font:10px Consolas,monospace;letter-spacing:2px}.location-title{font-weight:800;font-size:26px;letter-spacing:1.2px;margin:6px 0}.location-desc{color:#82d1d4;font:11px Consolas,monospace;letter-spacing:1.2px}.edge-label{position:absolute;font-size:9px;color:#b6dce580;text-shadow:0 0 10px #000}.edge-left{top:50%;left:20px;writing-mode:vertical-rl;transform:rotate(180deg)}.edge-bottom{right:26px;bottom:29px}
.panel-top{display:flex;justify-content:space-between;align-items:center}.panel-tag{font-size:9px;color:#92adbb}.system-meta{display:flex;justify-content:space-between;gap:15px;border:1px solid #7bbad629;background:linear-gradient(135deg,#1b354066,#0f23322b);padding:15px 13px;margin:6px 0 22px}.system-meta>div{display:grid;gap:7px}.system-meta span{font:9px Consolas,monospace;color:var(--muted)}.system-meta strong{font:16px Consolas,monospace;color:#eafcff}.section-caption{font-size:9px;color:#75d8e1;margin:24px 0 12px;border-bottom:1px solid var(--line);padding-bottom:9px}.systems{display:grid;gap:12px}.switch-row{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:12px;color:#a7c0cb;cursor:pointer;position:relative}.switch-row input{position:absolute;opacity:0;right:0;width:38px;height:20px;cursor:pointer}.switch-track{width:33px;height:18px;background:#233a46;border:1px solid #70949d66;border-radius:12px;position:relative;flex-shrink:0}.switch-track::after{content:'';position:absolute;left:3px;top:3px;width:10px;height:10px;border-radius:50%;background:#7c9da8;transition:transform .18s}.switch-row input:checked + .switch-track{background:#236772;border-color:#64dce1}.switch-row input:checked + .switch-track::after{transform:translateX(14px);background:#a2f5f4;box-shadow:0 0 8px #9ef8f5}.switch-row input:focus-visible + .switch-track{outline:2px solid #fff}.range-label{display:flex;justify-content:space-between;gap:8px;margin:13px 0 8px;font-size:10px;color:#a7c1cb;letter-spacing:.1px}.range-label span{color:#a0ecf0}input[type=range]{width:100%;height:3px;appearance:none;background:#29515d;accent-color:#69dce9;cursor:pointer;margin:0}input[type=range]::-webkit-slider-thumb{appearance:none;border-radius:2px;height:12px;width:6px;background:#93f0f4;box-shadow:0 0 7px #3ee1ef}.tool-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}.tool-grid button{background:#112d38d9;border:1px solid #6db1c03a;color:#a8cbd3;min-height:33px;font:10px Consolas,monospace;letter-spacing:.4px}.tool-grid button:hover,.tool-grid button.active{border-color:#6bdae2;color:#ddfbff;background:#17616a75}.tool-grid .tool-wide{grid-column:1/-1;color:#f1ce8a;border-color:#dfb26463}.right-footer{margin-top:25px;font:9px Consolas,monospace;color:#67959e;line-height:1.6}
.map-panel{position:fixed;z-index:3;left:280px;top:98px;width:280px;background:rgba(6,22,32,.82);border:1px solid rgba(114,198,211,.25);box-shadow:0 15px 32px #0008;backdrop-filter:blur(10px)}.map-header{padding:12px 13px 8px;display:flex;justify-content:space-between;color:#98dce4;font-size:9px}.map-header button{font:9px Consolas,monospace;background:none;color:#92acb6;border:0}.map-header button:hover{color:#fff}#minimap{display:block;width:100%;height:230px}.map-legend{display:flex;gap:15px;justify-content:center;padding:9px 6px 13px;color:#98aeb6;font-size:8px;border-top:1px solid #ffffff12}.map-dot{display:inline-block;width:6px;height:6px;border-radius:50%;margin-right:4px}.map-dot.cyan{background:#c4ffff}.map-dot.orange{background:#d5a875}
.statusbar{position:fixed;bottom:0;left:0;right:0;height:31px;z-index:6;padding:0 19px;display:flex;align-items:center;justify-content:space-between;gap:25px;background:#06141cf5;border-top:1px solid var(--line);font-size:9px;color:#91acb7}.statusbar>div{display:flex;align-items:center;gap:12px}.statusbar b{color:#83dfc1}.status-mid{color:#657e87!important}.divider{width:1px;height:12px;background:#507383}.statusbar .signal{width:5px;height:5px}.help-panel{z-index:8;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:min(500px,92vw);padding:30px;background:#081c27f5;border:1px solid #71c9d977;box-shadow:0 0 100px #000c;backdrop-filter:blur(15px)}.help-panel h2{font-size:20px;letter-spacing:2px}.help-grid{display:grid;grid-template-columns:130px auto;gap:14px 8px;margin:24px 0;font-size:13px}.help-grid span:nth-child(odd){color:#93f3fa;font-family:Consolas,monospace;font-size:12px}.help-grid span:nth-child(even){color:#bed1d9}.help-panel p{line-height:1.6;font-size:12px;color:#819fab}.close-help{position:absolute;right:17px;top:15px;border:0;background:transparent;color:#fff}.toast{position:fixed;z-index:10;bottom:53px;left:50%;transform:translate(-50%,20px);background:#103844ed;color:#d2f5f7;padding:12px 22px;font:11px Consolas,monospace;letter-spacing:1px;border:1px solid #73ebfa88;opacity:0;pointer-events:none;transition:all .2s}.toast.show{opacity:1;transform:translate(-50%,0)}
.loading{position:fixed;z-index:30;inset:0;background:radial-gradient(circle,#0b2b35,#061018 65%);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;text-align:center}.loading strong{color:#a9eaf0;letter-spacing:3px}.loading span{color:#638d9d;font:12px Consolas,monospace;letter-spacing:1px}.loading-ring{width:65px;height:65px;border:2px solid #3d6879;border-top-color:#8cf8fe;border-radius:50%;animation:spin 1.4s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
.welcome{position:fixed;z-index:20;inset:0;background:rgba(2,9,16,.68);backdrop-filter:blur(7px);display:grid;place-items:center;padding:25px}.welcome-card{width:min(660px,96vw);border:1px solid #7bb8cf77;background:linear-gradient(148deg,rgba(12,35,48,.97),rgba(5,15,25,.98));padding:42px 54px;box-shadow:0 30px 100px #000b;position:relative;overflow:hidden}.welcome-card:before{content:'';position:absolute;top:0;right:0;height:8px;width:42%;background:linear-gradient(90deg,transparent,#7ceaf3)}.overline{font-size:10px;color:#97dce2}.welcome-emblem{margin:31px 0 17px;font-size:46px;color:#8bffff}.welcome-emblem span{font:13px Consolas,monospace;vertical-align:middle;color:#8ac8c9;letter-spacing:1px}.welcome-card h1{font-size:52px;margin:0;letter-spacing:2px;line-height:1;font-weight:850}.welcome-card h1 span{color:#83d7e3}.hero-subtitle{font-size:14px;color:#9dccd9;margin:12px 0 24px}.welcome-card p{max-width:495px;line-height:1.7;color:#a4bac5;font-size:14px}.welcome-stats{display:flex;border-top:1px solid #6fa6b336;border-bottom:1px solid #6fa6b336;padding:19px 0;gap:32px;margin:26px 0}.welcome-stats>div{display:grid;gap:8px}.welcome-stats b{font:25px Consolas,monospace;color:#e6faff}.welcome-stats small{font:9px Consolas,monospace;color:#87abb8;letter-spacing:1px}.welcome-actions{display:flex;gap:10px}.welcome-actions button{padding:15px 22px;border-radius:0;border:1px solid #89d8e1;background:transparent;color:#cceaf4;font:11px Consolas,monospace;letter-spacing:1px}.welcome-actions .primary{background:#a7ecf1;color:#071a22;flex:1;font-weight:800}.welcome-actions .primary span{float:right;margin-left:8px}.welcome-actions button:hover{filter:brightness(1.15)}.welcome-footer{margin-top:24px;font-size:9px;line-height:1.8;color:#77959e}
@media(max-width:1180px){.top-stats{gap:12px}.topbar{padding:0 15px}.rightpanel{width:252px;padding:20px 15px}.leftpanel{width:223px}.viewport-overlay{left:223px;right:252px}.map-panel{left:239px;width:225px}#minimap{height:196px}.map-legend{font-size:7px}.brand{min-width:245px}.brand-line{font-size:17px}.top-stats>div{min-width:75px}}
@media(max-width:880px){.top-stats>div:nth-child(2),.top-stats>div:nth-child(4),.brand-sub{display:none}.rightpanel{width:224px}.leftpanel{width:176px;padding:18px 8px}.level{gap:5px}.level-depth{display:none}.viewport-overlay{left:176px;right:224px}.map-panel{left:186px;top:88px;width:190px}.map-legend{flex-wrap:wrap}.brand{min-width:200px}}
@media(max-width:650px){.leftpanel{top:auto;height:150px;bottom:31px;left:0;right:0;width:100%;padding:10px;overflow-x:auto}.leftpanel .micro-title,.leftpanel .panel-heading,.left-footer{display:none}.level-list{display:flex;min-width:800px}.level{min-width:110px;height:53px}.rightpanel{top:65px;bottom:181px;width:min(240px,80vw)}.topbar{height:65px}.brand{min-width:170px}.brand-line{font-size:14px}.top-stats{display:none}.viewport-overlay{inset:65px 0 181px 0}.locator{bottom:20px}.location-title{font-size:20px}.map-panel{top:72px;left:9px;width:168px}.map-legend{display:none}.status-mid{display:none!important}.welcome-card{padding:25px}.welcome-card h1{font-size:38px}.welcome-stats{gap:20px}.welcome-stats b{font-size:18px}.welcome-actions{flex-direction:column}.welcome-footer{font-size:8px}}
