*{scrollbar-color:#555 #1a1a1a;scrollbar-width:thin}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#1a1a1a}::-webkit-scrollbar-thumb{background:#555;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#777}body{background:#434343;margin:0;font-family:ui-monospace,Consolas,monospace}#page_titlebar{z-index:10000;background:#0d1b4b;border-bottom:1px solid #3a5298;align-items:center;gap:16px;padding:0 20px;display:flex;position:relative}#btn_sim_tune{color:#c8d4f0;cursor:pointer;background:0 0;border:1px solid #3a5298;border-radius:4px;justify-content:center;align-items:center;width:28px;height:28px;padding:0;font-size:14px;line-height:1;display:flex}#btn_sim_tune:hover{background:#1a2e6b;border-color:#6080c8}#btn_save_topology{color:#c8d4f0;cursor:pointer;background:0 0;border:1px solid #3a5298;border-radius:4px;height:28px;margin-left:8px;padding:0 12px;font-family:ui-monospace,Consolas,monospace;font-size:13px}#btn_save_topology:hover{background:#1a2e6b;border-color:#6080c8}#btn_save_topology:disabled{opacity:.5;cursor:default}#sim_tune_panel{z-index:10000;background:#0d1b4b;border:1px solid #3a5298;border-top:none;min-width:280px;padding:8px 12px;position:fixed;top:44px;right:10px}.sim_tune_row{align-items:center;gap:8px;padding:4px 0;display:flex}.sim_tune_label{color:#89c;flex-shrink:0;width:100px;font-size:11px}.sim_tune_slider{accent-color:#c8b560;cursor:pointer;flex:1}.sim_tune_value{color:#c8d4f0;text-align:right;flex-shrink:0;width:36px;font-size:11px}#btn_topology_title{color:#dce8ff;cursor:pointer;white-space:nowrap;text-overflow:ellipsis;background:#3a68d0;border:1px solid #1a3a80;border-radius:9999px;align-self:stretch;width:260px;margin:4px 0;padding:0 14px;font-family:ui-monospace,Consolas,monospace;font-size:20px;overflow:hidden}#btn_topology_title:hover{background:#4878e8;border-color:#0f2860}#page_titlebar h1{color:#c8d4f0;letter-spacing:.5px;margin:0;padding:10px 0;font-size:20px;font-weight:400}#page_titlebar h1 strong{font-weight:700}.popup_overlay{z-index:10000;background:#0000008c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.popup_overlay[hidden]{display:none}.popup_dialog{background:#2a2a2a;border:1px solid #444;border-radius:8px;flex-direction:column;max-width:90vw;max-height:90vh;display:flex;overflow:hidden;box-shadow:0 16px 48px #000c}.popup_header{flex-shrink:0;align-items:center;height:70px;padding:0 20px;display:flex}.popup_title{color:#e8edf8;flex:1;font-family:ui-sans-serif,system-ui,sans-serif;font-size:16px;font-weight:600}.popup_close{color:#888;cursor:pointer;background:0 0;border:none;padding:0 4px;font-family:inherit;font-size:24px;line-height:1}.popup_close:hover{color:#ccc}.popup_body{flex:1;min-height:0;display:flex;overflow:auto}#modal_content{width:100%;height:100%;display:flex}#modal_tabs{border-right:1px solid #2e2838;flex-direction:column;flex-shrink:0;width:33.33%;padding-top:8px;display:flex}.modal_tab{cursor:pointer;color:#9aaccf;-webkit-user-select:none;user-select:none;border-left:3px solid #0000;padding:12px 20px;font-family:ui-sans-serif,system-ui,sans-serif;font-size:14px}.modal_tab:hover{color:#c8d4f0;background:#231d2a}.modal_tab.active{color:#c8d4f0;background:#231d2a;border-left-color:#3a5298}#modal_panel{flex:1;padding:20px 24px;overflow-y:auto}.modal_field{flex-direction:column;gap:6px;margin-bottom:20px;display:flex}.modal_field label{color:#89c;font-family:ui-sans-serif,system-ui,sans-serif;font-size:13px}.modal_field_label{color:#89c;margin-bottom:2px;font-family:ui-sans-serif,system-ui,sans-serif;font-size:13px}.modal_radio_group{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.modal_radio_label{color:#c8d4f0;cursor:pointer;align-items:center;gap:5px;font-family:ui-monospace,Consolas,monospace;font-size:13px;display:flex}.modal_radio_label input[type=radio]{accent-color:#3a5298;cursor:pointer}.modal_text_input{color:#c8d4f0;background:#1a1a2e;border:1px solid #333;border-radius:4px;width:200px;padding:6px 8px;font-family:ui-monospace,Consolas,monospace;font-size:13px}.modal_field input[type=number]{color:#c8d4f0;background:#1a1a2e;border:1px solid #333;border-radius:4px;width:100px;padding:6px 8px;font-family:ui-monospace,Consolas,monospace;font-size:13px}.popup_footer{flex-shrink:0;justify-content:flex-end;align-items:center;padding:0 20px;display:flex}.popup_footer:not(:empty){height:70px}#modal_add{color:#c8d4f0;cursor:pointer;background:#1a2e6b;border:1px solid #3a5298;border-radius:4px;padding:8px 48px;font-family:ui-monospace,Consolas,monospace;font-size:13px}#modal_add:hover{background:#2a3e8b;border-color:#6080c8}.lab_list{box-sizing:border-box;flex-direction:column;gap:10px;width:100%;padding:16px;display:flex}.lab_row{cursor:pointer;background:#222;border:1px solid #3a3a3a;border-radius:6px;flex-direction:column;gap:6px;padding:14px 16px;display:flex}.lab_row:hover{background:#2a2a3a;border-color:#5a5a7a}.lab_row_header{align-items:center;gap:10px;display:flex}.lab_row_title{color:#c8d4f0;font-family:ui-sans-serif,system-ui,sans-serif;font-size:14px;font-weight:700}.lab_row_badge{color:#1a1a2e;background:#7eb8f7;border-radius:4px;padding:2px 7px;font-family:ui-sans-serif,system-ui,sans-serif;font-size:11px;font-weight:600}.lab_row_desc{color:#888;font-family:ui-sans-serif,system-ui,sans-serif;font-size:12px;line-height:1.5}.lab_list_error{color:#c84040;padding:20px;font-size:13px}#about_content{width:100%;height:100%;display:flex}#about_nav{border-right:1px solid #2e2838;flex-direction:column;flex-shrink:0;width:22%;padding-top:8px;display:flex;overflow-y:auto}.about_nav_item{cursor:pointer;color:#9aaccf;-webkit-user-select:none;user-select:none;border-left:3px solid #0000;padding:12px 20px;font-family:ui-sans-serif,system-ui,sans-serif;font-size:14px}.about_nav_item:hover{color:#c8d4f0;background:#231d2a}.about_nav_item.active{color:#c8d4f0;background:#231d2a;border-left-color:#3a5298}#about_frame{background:#222;border:none;flex:1}#btn_fab{color:#000;cursor:pointer;z-index:1;background:#eee;border:none;border-radius:16px;justify-content:center;align-items:center;width:90px;height:90px;padding:0;font-size:72px;line-height:1;display:flex;position:fixed;bottom:45px;left:20px;box-shadow:0 4px 20px #0006}#btn_fab:hover{background:#e0e0e0;box-shadow:0 6px 28px #00000080}#page_footer{color:#222;z-index:9999;background:#aaa;border-top:1px solid #000;align-items:center;height:25px;padding:0 20px;font-family:ui-monospace,Consolas,monospace;font-size:14px;display:flex;position:fixed;bottom:0;left:0;right:0}#page_footer a{color:#222;cursor:pointer;text-decoration:underline}#page_footer a:hover{color:#000}.vm_window{cursor:default;-webkit-user-select:none;user-select:none;background:#0e0e0e;border:1px solid #444;flex-direction:column;width:max-content;display:flex;position:fixed;box-shadow:0 8px 32px #000c}.vm_window.focused{border-color:#3a5298;box-shadow:0 8px 32px #000c,0 0 0 1px #3a5298}.vm_window.focused .vm_titlebar{color:#c8d4f0;background:#0d1b4b}.vm_titlebar{color:#aaa;cursor:grab;background:#1a1a1a;border-bottom:1px solid #444;align-items:center;padding:4px 10px;font-size:12px;display:flex}.vm_titlebar:active,.vm_titlebar[data-dragging]{cursor:grabbing}.vm_title{flex:1}.vm_close{color:#555;cursor:pointer;background:0 0;border:none;margin-left:4px;padding:0 2px;font-family:inherit;font-size:16px;line-height:1}.vm_close:hover{color:#ccc}.vm_wrap{flex-direction:column;width:100%;display:flex}.term_wrap{flex-direction:column;gap:8px;display:flex}.term_controls{align-items:center;gap:8px;display:flex}.upload_label{cursor:pointer;color:#888;-webkit-user-select:none;user-select:none;font-size:18px;line-height:1}.upload_label:hover{color:#ccc}.upload_input{display:none}.net_progress{background:#3a0000;border-radius:50%;flex-shrink:0;width:10px;height:10px;transition:background .1s}.net_progress.active{background:#ff2020;box-shadow:0 0 6px #ff2020}.term_paste{color:#888;resize:none;background:#1a1a1a;border:1px solid #444;border-radius:4px;height:22px;padding:2px 6px;font-family:inherit;font-size:12px}.noSelect{-webkit-user-select:none;user-select:none}.hub_window{width:auto;min-width:0}.vm_net_panel{background:#111;border-top:1px solid #333;flex-shrink:0;align-items:center;gap:6px;height:57px;padding:0 10px;display:flex}.vm_net_iface{border:1px solid #0000;border-radius:4px;line-height:0;display:inline-block;position:relative}.net_plug{display:none}.wire_connected .net_plug{display:inline}.wire_drag_source{box-shadow:0 0 6px #c8b56088;background:#2a2a00!important;border-color:#c8b560!important}.wire_drag_target{cursor:crosshair!important;background:#001a10!important;border-color:#0845!important}.wire_drag_target_hot{cursor:crosshair!important;background:#003828!important;border-color:#0c8c!important;box-shadow:0 0 8px #0c87!important}.vm_net_iface.wire_connected:not(.wire_selected){cursor:pointer!important}.vm_net_iface.wire_connected:not(.wire_selected):hover>svg{filter:drop-shadow(0 0 2px #c22)drop-shadow(0 0 5px #800)}.wire_selected{background:#2a0000!important}.wire_selected>svg{filter:drop-shadow(0 0 3px #f44)drop-shadow(0 0 7px #c00)}.wire_delete_btn{cursor:pointer}.wire_delete_btn circle{fill:#911;stroke:#f44;stroke-width:1.5px}.wire_delete_btn:hover circle{fill:#d22;stroke:#f88}.doc_window{background:#1c1621;flex-direction:column;width:auto;min-width:200px;display:flex}.doc_content{color:#c8d4f0;flex:1;padding:12px 16px;font-family:ui-sans-serif,system-ui,sans-serif;font-size:14px;line-height:1.6;overflow-y:auto}.doc_content :first-child{margin-top:0}.doc_content h1,.doc_content h2,.doc_content h3,.doc_content h4,.doc_content h5,.doc_content h6{color:#e8edf8;margin:.75em 0 .25em;font-weight:600}.doc_content p{margin:.4em 0}.doc_content ul,.doc_content ol{margin:.4em 0;padding-left:1.4em}.doc_content code{color:#a8d8ff;background:#1a1a2e;border:1px solid #333;border-radius:3px;padding:0 4px;font-family:ui-monospace,Consolas,monospace;font-size:.9em}.doc_content pre{background:#1a1a2e;border:1px solid #333;border-radius:4px;padding:8px 12px;overflow-x:auto}.doc_content pre code{background:0 0;border:none;padding:0}.doc_content a{color:#6090e0}.doc_content a:hover{color:#90b8ff}.doc_content blockquote{color:#9aaccf;border-left:3px solid #3a5298;margin:.5em 0;padding:0 0 0 12px}.doc_content hr{border:none;border-top:1px solid #333;margin:.8em 0}.doc_content table{border-collapse:collapse;margin:.5em 0;font-size:.9em}.doc_content th,.doc_content td{border:1px solid #444;padding:4px 8px}.doc_content th{color:#e8edf8;background:#1a1a2e;font-weight:600}.send_block{margin:.6em 0}.send_block pre{margin-bottom:0}.send_actions{justify-content:flex-end;padding:0;display:flex}.send_btn{color:#c8d4f0;cursor:pointer;background:#1a2a5a;border:1px solid #3a5298;border-radius:3px;padding:2px 10px;font-family:ui-sans-serif,system-ui,sans-serif;font-size:12px}.send_btn:hover{background:#2a3a7a;border-color:#5a72b8}.goto_btn{color:#c8d4f0;cursor:pointer;background:#0e2e28;border:1px solid #2a7060;border-radius:3px;margin:.4em 0;padding:2px 10px;font-family:ui-sans-serif,system-ui,sans-serif;font-size:12px}.goto_btn:hover{background:#1a4a40;border-color:#3a9080}.vm_tabbar{background:#111;border-bottom:1px solid #333;flex-shrink:0;align-items:stretch;gap:2px;padding:0 4px;display:flex}.vm_tab{color:#666;cursor:pointer;white-space:nowrap;-webkit-user-select:none;user-select:none;border-bottom:2px solid #0000;padding:3px 8px;font-size:11px}.vm_tab.active{color:#c8d4f0;border-bottom-color:#3a5298}.vm_tab:hover:not(.active){color:#aaa}.vm_tab_add{color:#444;cursor:pointer;background:0 0;border:none;padding:1px 6px;font-family:inherit;font-size:14px;line-height:1}.vm_tab_add:hover{color:#888}.vm_resize_grip{cursor:nwse-resize;opacity:.35;clip-path:polygon(100% 0%,100% 100%,0% 100%);background:repeating-linear-gradient(-45deg,#888 0 1px,#0000 1px 3px);width:16px;height:16px;position:absolute;bottom:1px;right:1px}.vm_resize_grip:hover{opacity:.8}#app{touch-action:none;-webkit-user-select:none;user-select:none}.xterm{cursor:text;-webkit-user-select:none;user-select:none;position:relative}.xterm.focus,.xterm:focus{outline:none}.xterm .xterm-helpers{z-index:5;position:absolute;top:0}.xterm .xterm-helper-textarea{opacity:0;z-index:-5;white-space:nowrap;resize:none;border:0;width:0;height:0;margin:0;padding:0;position:absolute;top:0;left:-9999em;overflow:hidden}.xterm .composition-view{color:#fff;white-space:nowrap;z-index:1;background:#000;display:none;position:absolute}.xterm .composition-view.active{display:block}.xterm .xterm-viewport{cursor:default;background-color:#000;position:absolute;inset:0;overflow-y:scroll}.xterm .xterm-screen{position:relative}.xterm .xterm-screen canvas{position:absolute;top:0;left:0}.xterm .xterm-scroll-area{visibility:hidden}.xterm-char-measure-element{visibility:hidden;line-height:normal;display:inline-block;position:absolute;top:0;left:-9999em}.xterm.enable-mouse-events{cursor:default}.xterm.xterm-cursor-pointer,.xterm .xterm-cursor-pointer{cursor:pointer}.xterm.column-select.focus{cursor:crosshair}.xterm .xterm-accessibility:not(.debug),.xterm .xterm-message{z-index:10;color:#0000;pointer-events:none;position:absolute;inset:0}.xterm .xterm-accessibility-tree:not(.debug) ::selection{color:#0000}.xterm .xterm-accessibility-tree{-webkit-user-select:text;user-select:text;white-space:pre}.xterm .live-region{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.xterm-dim{opacity:1!important}.xterm-underline-1{text-decoration:underline}.xterm-underline-2{-webkit-text-decoration:underline double;text-decoration:underline double}.xterm-underline-3{-webkit-text-decoration:underline wavy;text-decoration:underline wavy}.xterm-underline-4{-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.xterm-underline-5{-webkit-text-decoration:underline dashed;text-decoration:underline dashed}.xterm-overline{text-decoration:overline}.xterm-overline.xterm-underline-1{text-decoration:underline overline}.xterm-overline.xterm-underline-2{-webkit-text-decoration:overline double underline;text-decoration:overline double underline}.xterm-overline.xterm-underline-3{-webkit-text-decoration:overline wavy underline;text-decoration:overline wavy underline}.xterm-overline.xterm-underline-4{-webkit-text-decoration:overline dotted underline;text-decoration:overline dotted underline}.xterm-overline.xterm-underline-5{-webkit-text-decoration:overline dashed underline;text-decoration:overline dashed underline}.xterm-strikethrough{text-decoration:line-through}.xterm-screen .xterm-decoration-container .xterm-decoration{z-index:6;position:absolute}.xterm-screen .xterm-decoration-container .xterm-decoration.xterm-decoration-top-layer{z-index:7}.xterm-decoration-overview-ruler{z-index:8;pointer-events:none;position:absolute;top:0;right:0}.xterm-decoration-top{z-index:2;position:relative}@font-face{font-family:Ubuntu Mono;src:url(https://cdn.vmsandbox.net/db8b5e2ed62fd629a99fd97646fdc53c49a00d8d/assets/UbuntuMono-R-B5zf1UKa.ttf)format("truetype");font-weight:400;font-style:normal}@font-face{font-family:Ubuntu Mono;src:url(https://cdn.vmsandbox.net/db8b5e2ed62fd629a99fd97646fdc53c49a00d8d/assets/UbuntuMono-B-T2SEfgbH.ttf)format("truetype");font-weight:700;font-style:normal}@font-face{font-family:Ubuntu Mono;src:url(https://cdn.vmsandbox.net/db8b5e2ed62fd629a99fd97646fdc53c49a00d8d/assets/UbuntuMono-RI-CegPcNkJ.ttf)format("truetype");font-weight:400;font-style:italic}@font-face{font-family:Ubuntu Mono;src:url(https://cdn.vmsandbox.net/db8b5e2ed62fd629a99fd97646fdc53c49a00d8d/assets/UbuntuMono-BI-DP0Scha5.ttf)format("truetype");font-weight:700;font-style:italic}
