:root{--bg:#080b11;--bg2:#0b1017;--panel:#0d1420;--panel2:#0f1826;--line:#1a2331;--line2:#243141;--tx:#e7eef7;--tx2:#9aa8ba;--tx3:#718297;--sig:#35d0e6;--sig-dim:#1c8fa1;--good:#34d399;--warn:#f5b544;--faint:#7c8aa0;--mono:ui-monospace,"SF Mono","JetBrains Mono",Menlo,Consolas,monospace;--sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--tx);font-family:var(--sans);font-size:13px;-webkit-font-smoothing:antialiased;overflow:hidden}.app{display:grid;grid-template-rows:52px 1fr 30px;height:100vh;width:100vw}.top{display:flex;align-items:center;gap:16px;padding:0 16px;border-bottom:1px solid var(--line);background:linear-gradient(180deg,var(--panel2),var(--bg2))}.brand{display:flex;align-items:center;gap:10px}.brand b{font-weight:650}.brand span{color:var(--tx3);font-size:11px;font-family:var(--mono);text-transform:uppercase;letter-spacing:1px}.tag{font-family:var(--mono);font-size:10px;color:var(--sig);border:1px solid var(--sig-dim);border-radius:999px;padding:2px 8px}.top .spacer{flex:1}.conn{display:flex;align-items:center;gap:7px;font-family:var(--mono);font-size:11px;color:var(--tx2)}.dot{width:7px;height:7px;border-radius:50%;background:var(--good);box-shadow:0 0 8px var(--good)}.seg{display:flex;border:1px solid var(--line2);border-radius:8px;overflow:hidden}.seg button{background:transparent;border:0;color:var(--tx2);font-family:var(--mono);font-size:11px;padding:5px 11px;cursor:pointer}.seg button.on{background:var(--sig);color:#04222a;font-weight:600}.mid{display:grid;grid-template-columns:264px 1fr;min-height:0;position:relative}.rail{position:relative;border-right:1px solid var(--line);background:var(--panel);overflow-y:auto;padding:14px}.panelx{position:absolute;top:10px;right:8px;z-index:5;width:22px;height:22px;display:grid;place-items:center;border:1px solid var(--line);background:var(--panel2);color:var(--tx2);border-radius:6px;cursor:pointer;font-size:15px;line-height:1}.panelx:hover{color:var(--tx);border-color:var(--sig)}.reopen{position:absolute;top:12px;z-index:20;width:26px;height:28px;display:grid;place-items:center;border:1px solid var(--line);background:var(--panel);color:var(--tx2);cursor:pointer;font-size:16px;border-radius:6px;box-shadow:0 2px 10px #0006}.reopen:hover{color:var(--tx);border-color:var(--sig)}.reopen.l{left:10px}.reopen.r{right:10px}.rzh{position:absolute;top:0;bottom:0;width:6px;z-index:5;cursor:col-resize;background:transparent}.rzh:hover,.rzh:active{background:linear-gradient(90deg,transparent,var(--sig),transparent)}.tip{position:fixed;z-index:50;pointer-events:none;display:flex;align-items:center;gap:7px;max-width:340px;padding:5px 9px;border:1px solid var(--line);background:#0a101af0;border-radius:7px;font-size:12px;color:var(--tx);box-shadow:0 6px 20px #00000080}.tip b{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:230px}.tip .tsw{width:8px;height:8px;border-radius:50%;flex:none}.rail h4{margin:18px 0 8px;font-size:10px;letter-spacing:1.4px;text-transform:uppercase;color:var(--tx3);font-weight:600}.rail h4:first-child{margin-top:2px}.search{position:relative}.search input{width:100%;background:var(--bg2);border:1px solid var(--line2);color:var(--tx);border-radius:8px;padding:8px 10px 8px 12px;font-size:12px;font-family:var(--mono);outline:none}.search input:focus{border-color:var(--sig-dim);box-shadow:0 0 0 3px #35d0e61f}.kind{display:flex;align-items:center;gap:9px;padding:6px 7px;border-radius:7px;cursor:pointer;-webkit-user-select:none;user-select:none;transition:opacity .18s ease,background .18s ease}.kind:hover{background:var(--panel2)}.kind:active{transform:scale(.98)}.kind.off{opacity:.34}.sw{width:11px;height:11px;border-radius:3px;flex:none;box-shadow:0 0 7px 0 currentColor}.kind .nm{flex:1;font-size:12px;text-transform:capitalize}.kind .ct{font-family:var(--mono);font-size:11px;color:var(--tx2);font-variant-numeric:tabular-nums}.ctrl{display:flex;align-items:center;justify-content:space-between;padding:5px 7px;font-size:12px;color:var(--tx2)}.switch{width:34px;height:19px;border-radius:999px;background:var(--line2);position:relative;cursor:pointer;transition:background .15s;flex:none}.switch.on{background:var(--sig-dim)}.switch:after{content:"";position:absolute;top:2px;left:2px;width:15px;height:15px;border-radius:50%;background:var(--tx);transition:left .15s}.switch.on:after{left:17px;background:var(--sig)}.btnrow{display:flex;gap:8px;margin-top:6px}.btn{flex:1;background:var(--bg2);border:1px solid var(--line2);color:var(--tx2);border-radius:7px;padding:7px;font-size:11px;font-family:var(--mono);cursor:pointer}.btn:hover{border-color:var(--sig-dim);color:var(--tx)}.stat{display:flex;justify-content:space-between;font-family:var(--mono);font-size:11px;color:var(--tx2);padding:3px 7px}.stat b{color:var(--tx)}.stage{position:relative;min-width:0;overflow:hidden;cursor:grab;background:#14203a}.stage:active{cursor:grabbing}.hint{position:absolute;left:14px;bottom:12px;font-family:var(--mono);font-size:10.5px;color:var(--tx3);background:#080b1199;border:1px solid var(--line);border-radius:7px;padding:6px 9px;pointer-events:none;z-index:2}.hint b{color:var(--tx2)}.loading{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;color:var(--tx2);font-family:var(--mono);font-size:12px}.skeleton{position:absolute;top:0;right:0;bottom:0;left:0;opacity:.13;pointer-events:none;background:radial-gradient(circle,var(--sig) 1px,transparent 1.6px) 0 0/46px 46px;animation:pulse 2.2s ease-in-out infinite}.stage-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;z-index:3;pointer-events:none}.spinner{width:32px;height:32px;border-radius:50%;border:2px solid var(--line2);border-top-color:var(--sig);animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.05}}.detail-p{position:relative;border-left:1px solid var(--line);background:var(--panel);overflow-y:auto;padding:16px;animation:slidein .22s ease}@keyframes slidein{0%{opacity:0;transform:translate(10px)}to{opacity:1;transform:none}}.pill{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-family:var(--mono);padding:3px 9px;border-radius:999px;text-transform:uppercase;letter-spacing:.6px}.d-name{font-size:16px;font-weight:640;margin:11px 0 3px;line-height:1.25;word-break:break-word}.uri{font-family:var(--mono);font-size:11px;color:var(--sig);word-break:break-all;background:var(--bg2);border:1px solid var(--line);border-radius:6px;padding:6px 8px;margin-top:6px}.role{color:var(--tx2);margin-top:11px;font-size:12.5px}.src{display:inline-block;margin-top:9px;font-family:var(--mono);font-size:11px;color:var(--sig);text-decoration:none;border:1px solid var(--sig-dim);border-radius:6px;padding:4px 9px}.src:hover{background:#35d0e61a}.body{margin-top:12px;font-size:12px;color:var(--tx2);line-height:1.55;max-height:180px;overflow:auto;padding-right:4px;white-space:pre-wrap;word-break:break-word}.idrow{margin-top:12px}.idrow summary{font-family:var(--mono);font-size:10px;color:var(--tx3);cursor:pointer;text-transform:uppercase;letter-spacing:1px;list-style:none}.idrow summary::-webkit-details-marker{display:none}.idrow summary:before{content:"▸ ";color:var(--tx3)}.idrow[open] summary:before{content:"▾ "}.cite a{color:var(--sig);text-decoration:none;word-break:break-all}.cite a:hover{text-decoration:underline}.sec{margin-top:18px}.sec .lbl{font-size:10px;letter-spacing:1.4px;text-transform:uppercase;color:var(--tx3);font-weight:600;display:flex;justify-content:space-between}.cite{background:var(--bg2);border:1px solid var(--line);border-left:2px solid var(--good);border-radius:6px;padding:8px 10px;margin-top:8px;font-family:var(--mono);font-size:11px}.cite .p{color:var(--tx);word-break:break-all}.cite .m{color:var(--tx3);margin-top:4px;display:flex;gap:8px;align-items:center;flex-wrap:wrap}.cpill{font-size:9.5px;padding:1px 6px;border-radius:999px;letter-spacing:.4px;color:#04222a}.rel{display:flex;align-items:center;gap:8px;padding:6px 4px;border-bottom:1px solid var(--line);cursor:pointer}.rel:hover{background:var(--panel2)}.rel .arrow{font-family:var(--mono);font-size:10px;color:var(--tx3);width:26px}.rel .rk{font-family:var(--mono);font-size:10px;padding:1px 6px;border-radius:4px;background:var(--panel2);color:var(--tx2)}.rel .rt{flex:1;font-family:var(--mono);font-size:11px;color:var(--tx);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rel .rsw{width:8px;height:8px;border-radius:2px;flex:none}.trust{margin-top:18px;font-family:var(--mono);font-size:10px;color:var(--tx3);border-top:1px solid var(--line);padding-top:11px}.trust b{color:var(--good)}.empty{color:var(--tx3);text-align:center;margin-top:38%;font-size:12px}.status{display:flex;align-items:center;gap:16px;padding:0 14px;border-top:1px solid var(--line);background:var(--panel);font-family:var(--mono);font-size:11px;color:var(--tx3)}.status .sel{color:var(--sig)}.status .spacer{flex:1}.status .badge b{color:var(--good)}.gate{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:radial-gradient(120% 90% at 50% 35%,#0c131d,#05070b);z-index:20}.gate .box{width:360px;background:var(--panel);border:1px solid var(--line2);border-radius:14px;padding:26px}.gate h3{margin:0 0 4px;font-size:16px}.gate p{margin:0 0 16px;color:var(--tx2);font-size:12px}.gate input{width:100%;background:var(--bg2);border:1px solid var(--line2);color:var(--tx);border-radius:8px;padding:10px 12px;font-family:var(--mono);font-size:12px;outline:none}.gate input:focus{border-color:var(--sig-dim)}.gate button{margin-top:12px;width:100%;background:var(--sig);color:#04222a;border:0;border-radius:8px;padding:10px;font-weight:650;cursor:pointer;font-size:13px}.gate .err{color:#fb7185;font-size:11px;margin-top:8px;font-family:var(--mono)}@media (prefers-reduced-motion:reduce){.spinner,.skeleton,.detail-p{animation:none}.kind,.switch:after{transition:none}.detail-p{transform:none}}.settling{font-family:var(--mono);font-size:10px;color:var(--tx3);letter-spacing:.4px;margin-right:12px;opacity:.85}.h4n{font-weight:400;text-transform:none;letter-spacing:0;color:var(--tx3);font-size:10px;margin-left:6px}.note{margin:8px 7px 0;font-size:11px;line-height:1.5;color:var(--tx3);border-left:2px solid var(--line2);padding-left:8px}.note b{color:var(--tx2)}.muted{color:var(--tx3);font-family:var(--mono);font-size:11px;padding:4px 0}.chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.chip{font-family:var(--mono);font-size:10px;padding:3px 8px;border-radius:999px;background:var(--panel2);border:1px solid var(--line2);color:var(--tx2)}.chip b{color:var(--tx);font-weight:600}.btn.wide{width:100%;flex:none;margin-top:10px}.btn:disabled{opacity:.5;cursor:default}.body.scroll{max-height:280px}.relg{border-bottom:1px solid var(--line)}.relg>summary{display:flex;align-items:center;gap:8px;padding:7px 4px;cursor:pointer;list-style:none;-webkit-user-select:none;user-select:none}.relg>summary::-webkit-details-marker{display:none}.relg>summary:hover{background:var(--panel2)}.relg .arrow{font-family:var(--mono);font-size:10px;color:var(--tx3);width:26px}.relg .rk{flex:1;font-family:var(--mono);font-size:11px;color:var(--tx)}.relg .rn{font-family:var(--mono);font-size:10px;padding:1px 7px;border-radius:999px;background:var(--panel2);color:var(--tx2);border:1px solid var(--line2)}.relg[open]>summary{color:var(--sig)}.rlist{max-height:260px;overflow:auto;padding-left:26px}.rlist .rel{border-bottom:1px solid transparent;padding:4px}.fresh{font-family:var(--mono);font-size:11px;color:var(--tx2);margin-top:7px}.fresh b{color:var(--tx)}.kind{width:100%;background:none;border:0;color:inherit;font:inherit;text-align:left}.switch{border:0;padding:0;-webkit-appearance:none;-moz-appearance:none;appearance:none}:where(button,input,a,[role=switch],[role=separator],summary):focus-visible{outline:2px solid var(--sig);outline-offset:2px;border-radius:6px}.gate .box{width:420px;display:flex;flex-direction:column}.gate-lede{margin:6px 0 18px;font-size:12.5px;line-height:1.6;color:var(--tx2)}.gate label{font-size:11px;letter-spacing:.6px;text-transform:uppercase;color:var(--tx3);font-weight:600;margin-bottom:6px}.gate-help{margin:14px 0 0;font-size:11px;line-height:1.6;color:var(--tx3)}.gate-help code{font-family:var(--mono);color:var(--tx2);background:var(--panel2);padding:1px 5px;border-radius:4px}.gate button:disabled{opacity:.6;cursor:default}.sigma-host{position:absolute;top:0;right:0;bottom:0;left:0}.zoomladder{display:flex;flex-direction:column;gap:2px;padding:2px 7px 4px}.zband{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--tx3);padding:3px 0;transition:color .18s}.zband .zdot{width:6px;height:6px;border-radius:50%;background:var(--line2);flex:none;transition:background .18s,box-shadow .18s}.zband.on{color:var(--tx)}.zband.on .zdot{background:var(--sig);box-shadow:0 0 0 3px #35d0e62e}.zoomhud{position:absolute;left:14px;bottom:14px;display:flex;flex-direction:column;gap:2px;padding:8px 12px;border-radius:9px;background:#0a101ac7;border:1px solid var(--line2);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);pointer-events:none}.zoomhud b{font-size:12px;color:var(--tx)}.zoomhud span{font-family:var(--mono);font-size:10.5px;color:var(--tx3)}.sw{width:11px;height:11px;flex:none;display:inline-block}.sw.sh-circle{border-radius:50%}.sw.sh-halo{border-radius:50%;box-shadow:0 0 0 1.5px var(--panel),0 0 0 3px currentColor}.sw.sh-ring{border-radius:50%;background:transparent!important;border:2.5px solid}.legend{display:flex;flex-direction:column;gap:6px;padding:4px 7px 8px}.lgrow{display:flex;align-items:center;gap:9px;font-size:11px;color:var(--tx3);line-height:1.35}.lgline{width:22px;flex:none;border-radius:2px}.tip{position:fixed;z-index:40;display:flex;align-items:center;gap:8px;pointer-events:none;padding:7px 11px;border-radius:8px;background:#0c1320f0;border:1px solid var(--line2);box-shadow:0 6px 22px #00000073;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);max-width:420px;animation:tipin .14s ease-out}@keyframes tipin{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:none}}.tip .tsw{width:9px;height:9px;flex:none}.tip b{font-size:12px;color:var(--tx);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tip i{font-style:normal;font-family:var(--mono);font-size:10px;color:var(--tx3);white-space:nowrap}@media (prefers-reduced-motion: reduce){.tip{animation:none}*{transition-duration:.01ms!important}}
