.toast-title{font-weight:bold;}.toast-message{-ms-word-wrap:break-word;word-wrap:break-word;}.toast-message a,.toast-message label{color:#FFFFFF;}.toast-message a:hover{color:#CCCCCC;text-decoration:none;}.toast-close-button{position:relative;right:-0.3em;top:-0.3em;float:right;font-size:20px;font-weight:bold;color:#FFFFFF;-webkit-text-shadow:0 1px 0 #ffffff;text-shadow:0 1px 0 #ffffff;opacity:0.8;-ms-filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=80);filter:alpha(opacity=80);line-height:1;}.toast-close-button:hover,.toast-close-button:focus{color:#000000;text-decoration:none;cursor:pointer;opacity:0.4;-ms-filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=40);filter:alpha(opacity=40);}.rtl .toast-close-button{left:-0.3em;float:left;right:0.3em;}button.toast-close-button{padding:0;cursor:pointer;background:transparent;border:0;-webkit-appearance:none;}.toast-top-center{top:0;right:0;width:100%;}.toast-bottom-center{bottom:0;right:0;width:100%;}.toast-top-full-width{top:0;right:0;width:100%;}.toast-bottom-full-width{bottom:0;right:0;width:100%;}.toast-top-left{top:12px;left:12px;}.toast-top-right{top:12px;right:12px;}.toast-bottom-right{right:12px;bottom:12px;}.toast-bottom-left{bottom:12px;left:12px;}#toast-container{position:fixed;z-index:999999;pointer-events:none;}#toast-container *{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;}#toast-container>div{position:relative;pointer-events:auto;overflow:hidden;margin:0 0 6px;padding:15px 15px 15px 50px;width:300px;-moz-border-radius:3px 3px 3px 3px;-webkit-border-radius:3px 3px 3px 3px;border-radius:3px 3px 3px 3px;background-position:15px center;background-repeat:no-repeat;-moz-box-shadow:0 0 12px #999999;-webkit-box-shadow:0 0 12px #999999;box-shadow:0 0 12px #999999;color:#FFFFFF;opacity:0.8;-ms-filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=80);filter:alpha(opacity=80);}#toast-container>div.rtl{direction:rtl;padding:15px 50px 15px 15px;background-position:right 15px center;}#toast-container>div:hover{-moz-box-shadow:0 0 12px #000000;-webkit-box-shadow:0 0 12px #000000;box-shadow:0 0 12px #000000;opacity:1;-ms-filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=100);filter:alpha(opacity=100);cursor:pointer;}#toast-container>.toast-info{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAGwSURBVEhLtZa9SgNBEMc9sUxxRcoUKSzSWIhXpFMhhYWFhaBg4yPYiWCXZxBLERsLRS3EQkEfwCKdjWJAwSKCgoKCcudv4O5YLrt7EzgXhiU3/4+b2ckmwVjJSpKkQ6wAi4gwhT+z3wRBcEz0yjSseUTrcRyfsHsXmD0AmbHOC9Ii8VImnuXBPglHpQ5wwSVM7sNnTG7Za4JwDdCjxyAiH3nyA2mtaTJufiDZ5dCaqlItILh1NHatfN5skvjx9Z38m69CgzuXmZgVrPIGE763Jx9qKsRozWYw6xOHdER+nn2KkO+Bb+UV5CBN6WC6QtBgbRVozrahAbmm6HtUsgtPC19tFdxXZYBOfkbmFJ1VaHA1VAHjd0pp70oTZzvR+EVrx2Ygfdsq6eu55BHYR8hlcki+n+kERUFG8BrA0BwjeAv2M8WLQBtcy+SD6fNsmnB3AlBLrgTtVW1c2QN4bVWLATaIS60J2Du5y1TiJgjSBvFVZgTmwCU+dAZFoPxGEEs8nyHC9Bwe2GvEJv2WXZb0vjdyFT4Cxk3e/kIqlOGoVLwwPevpYHT+00T+hWwXDf4AJAOUqWcDhbwAAAAASUVORK5CYII=")!important;}#toast-container>.toast-error{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAHOSURBVEhLrZa/SgNBEMZzh0WKCClSCKaIYOED+AAKeQQLG8HWztLCImBrYadgIdY+gIKNYkBFSwu7CAoqCgkkoGBI/E28PdbLZmeDLgzZzcx83/zZ2SSXC1j9fr+I1Hq93g2yxH4iwM1vkoBWAdxCmpzTxfkN2RcyZNaHFIkSo10+8kgxkXIURV5HGxTmFuc75B2RfQkpxHG8aAgaAFa0tAHqYFfQ7Iwe2yhODk8+J4C7yAoRTWI3w/4klGRgR4lO7Rpn9+gvMyWp+uxFh8+H+ARlgN1nJuJuQAYvNkEnwGFck18Er4q3egEc/oO+mhLdKgRyhdNFiacC0rlOCbhNVz4H9FnAYgDBvU3QIioZlJFLJtsoHYRDfiZoUyIxqCtRpVlANq0EU4dApjrtgezPFad5S19Wgjkc0hNVnuF4HjVA6C7QrSIbylB+oZe3aHgBsqlNqKYH48jXyJKMuAbiyVJ8KzaB3eRc0pg9VwQ4niFryI68qiOi3AbjwdsfnAtk0bCjTLJKr6mrD9g8iq/S/B81hguOMlQTnVyG40wAcjnmgsCNESDrjme7wfftP4P7SP4N3CJZdvzoNyGq2c/HWOXJGsvVg+RA/k2MC/wN6I2YA2Pt8GkAAAAASUVORK5CYII=")!important;}#toast-container>.toast-success{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAADsSURBVEhLY2AYBfQMgf///3P8+/evAIgvA/FsIF+BavYDDWMBGroaSMMBiE8VC7AZDrIFaMFnii3AZTjUgsUUWUDA8OdAH6iQbQEhw4HyGsPEcKBXBIC4ARhex4G4BsjmweU1soIFaGg/WtoFZRIZdEvIMhxkCCjXIVsATV6gFGACs4Rsw0EGgIIH3QJYJgHSARQZDrWAB+jawzgs+Q2UO49D7jnRSRGoEFRILcdmEMWGI0cm0JJ2QpYA1RDvcmzJEWhABhD/pqrL0S0CWuABKgnRki9lLseS7g2AlqwHWQSKH4oKLrILpRGhEQCw2LiRUIa4lwAAAABJRU5ErkJggg==")!important;}#toast-container>.toast-warning{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAGYSURBVEhL5ZSvTsNQFMbXZGICMYGYmJhAQIJAICYQPAACiSDB8AiICQQJT4CqQEwgJvYASAQCiZiYmJhAIBATCARJy+9rTsldd8sKu1M0+dLb057v6/lbq/2rK0mS/TRNj9cWNAKPYIJII7gIxCcQ51cvqID+GIEX8ASG4B1bK5gIZFeQfoJdEXOfgX4QAQg7kH2A65yQ87lyxb27sggkAzAuFhbbg1K2kgCkB1bVwyIR9m2L7PRPIhDUIXgGtyKw575yz3lTNs6X4JXnjV+LKM/m3MydnTbtOKIjtz6VhCBq4vSm3ncdrD2lk0VgUXSVKjVDJXJzijW1RQdsU7F77He8u68koNZTz8Oz5yGa6J3H3lZ0xYgXBK2QymlWWA+RWnYhskLBv2vmE+hBMCtbA7KX5drWyRT/2JsqZ2IvfB9Y4bWDNMFbJRFmC9E74SoS0CqulwjkC0+5bpcV1CZ8NMej4pjy0U+doDQsGyo1hzVJttIjhQ7GnBtRFN1UarUlH8F3xict+HY07rEzoUGPlWcjRFRr4/gChZgc3ZL2d8oAAAAASUVORK5CYII=")!important;}#toast-container.toast-top-center>div,#toast-container.toast-bottom-center>div{width:300px;margin-left:auto;margin-right:auto;}#toast-container.toast-top-full-width>div,#toast-container.toast-bottom-full-width>div{width:96%;margin-left:auto;margin-right:auto;}.toast{background-color:#030303;}.toast-success{background-color:#51A351;}.toast-error{background-color:#BD362F;}.toast-info{background-color:#2F96B4;}.toast-warning{background-color:#F89406;}.toast-progress{position:absolute;left:0;bottom:0;height:4px;background-color:#000000;opacity:0.4;-ms-filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=40);filter:alpha(opacity=40);}@media all and (max-width: 240px){#toast-container>div{padding:8px 8px 8px 50px;width:11em;}#toast-container>div.rtl{padding:8px 50px 8px 8px;}#toast-container .toast-close-button{right:-0.2em;top:-0.2em;}#toast-container .rtl .toast-close-button{left:-0.2em;right:0.2em;}}@media all and (min-width: 241px) and (max-width: 480px){#toast-container>div{padding:8px 8px 8px 50px;width:18em;}#toast-container>div.rtl{padding:8px 50px 8px 8px;}#toast-container .toast-close-button{right:-0.2em;top:-0.2em;}#toast-container .rtl .toast-close-button{left:-0.2em;right:0.2em;}}@media all and (min-width: 481px) and (max-width: 768px){#toast-container>div{padding:15px 15px 15px 50px;width:25em;}#toast-container>div.rtl{padding:15px 50px 15px 15px;}}:root{color-scheme:light;--fg-color:#1d2b3a;--fg-color-muted:#5b7186;--fg-color-highlight:#ff8a00;--accent-color:#009dff;--accent-color-dark:#0080d6;--accent-color-light:#5cc3ff;--accent-color-soft:#e3f4ff;--bg-color:#eaf6ff;--bg-color-menu:#f6fbffee;--bg-color-edit:#ffffff;--border-color:#cde9ff;--radius:10px;--shadow-soft:0 2px 6px rgba(0,110,190,0.15);--font-size:14px;--font-ui:ui-rounded,"SF Pro Rounded","Nunito","Varela Round","Segoe UI",system-ui,sans-serif;--connected-passive:#22c55e;--connected-active:#ffb400;--connected-color:var(--connected-passive);--animation:0.3s ease-in-out;--c-red:#ff5a5f;--c-orange:#ff8a00;--c-yellow:#ffbe0b;--c-green:#22c55e;--c-teal:#00b8a9;--c-blue:#009dff;--c-indigo:#5c6cff;--c-purple:#9b5de5;--c-pink:#f15bb5;}html,body{margin:0;padding:0;height:100%;width:100%;overscroll-behavior:none;box-sizing:border-box;background:var(--bg-color);color:var(--fg-color);font-family:var(--font-ui);font-weight:normal;font-size:var(--font-size);transition:font-size var(--animation),background-color var(--animation),color var(--animation),opacity var(--animation);}body#app{touch-action:none;}*,*:before,*:after{box-sizing:inherit;}*{margin:0;}p,hr{margin:revert;}@media (prefers-reduced-motion: reduce){:root{--animation:1ms linear;}*,*:before,*:after{animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:1ms!important;scroll-behavior:auto!important;}}@supports not selector(::-webkit-scrollbar){html{scrollbar-width:thin;scrollbar-color:#8fd0ff transparent;}}::-webkit-scrollbar{height:.6rem;width:.6rem;}::-webkit-scrollbar-track{background-color:transparent;}::-webkit-scrollbar-thumb{background-color:#a8dbff;border-radius:999px;border:2px solid transparent;background-clip:padding-box;}::-webkit-scrollbar-thumb:hover{background-color:var(--accent-color-light);}::-webkit-scrollbar-corner{background-color:transparent;}:focus-visible{outline:2px solid var(--accent-color);outline-offset:1px;}a{color:unset;text-decoration:none;}a.link{color:var(--accent-color-dark);font-weight:600;text-decoration:underline dotted 1px;text-underline-offset:0.2rem;-webkit-text-decoration:underline dotted 1px;}.link-dead{cursor:default;}label{user-select:none;cursor:pointer;}input[type="checkbox" i]{width:1em;height:1em;margin:0 3px 0 0;vertical-align:-0.1em;cursor:pointer;accent-color:var(--accent-color);}button{padding:5px 5px;background:none;border:none;color:unset;cursor:pointer;font-size:1.3rem;transition:transform 0.15s ease,background-color var(--animation),color var(--animation);}button:not(:disabled):hover{transform:translateY(-1px) scale(1.06);}button:not(:disabled):active{transform:translateY(1px) scale(0.96);}button.connected{color:var(--connected-color);}button:not(.connected,.reconnecting)>.fa-link{color:var(--c-purple);}button:not(.connected,.reconnecting)>.fa-bluetooth-b{color:var(--c-blue);}button:not(.connected,.reconnecting)>.fa-usb{color:var(--c-orange);}button.reconnecting{color:var(--connected-color);animation:reconnecting-pulse 1.2s ease-in-out infinite;}@keyframes reconnecting-pulse{50%{opacity:0.25;}}@media (prefers-reduced-motion: reduce){button.reconnecting{animation:none;opacity:0.6;}}button:disabled{opacity:0.4;cursor:default;}#menu-files,#menu-pkg,#menu-tools{position:relative;isolation:isolate;opacity:1;transition:opacity var(--animation);}#menu-files::before,#menu-pkg::before,#menu-tools::before{content:"";position:absolute;inset:0;pointer-events:none;z-index:0;opacity:0;transition:opacity var(--animation);background-image:repeating-linear-gradient(135deg,rgba(0,157,255,0.10) 0,rgba(0,157,255,0.10) 8px,transparent 8px,transparent 16px);background-size:100% 100%;background-repeat:no-repeat;mix-blend-mode:multiply;}#menu-files>*,#menu-pkg>*,#menu-tools>*{position:relative;z-index:1;}:is(#menu-files,#menu-pkg,#menu-tools):is([inert],.inert){opacity:0.4;}:is(#menu-files,#menu-pkg,#menu-tools):is([inert],.inert)::before{opacity:1;}select{border:2px solid var(--border-color);border-radius:999px;padding:2px 8px;cursor:pointer;}select:hover{border-color:var(--accent-color-light);}input,select,option{font:unset;color:unset;background-color:unset;}select{background-color:var(--bg-color-edit);}option{background-color:var(--bg-color-edit);}.windows{font-family:ui-rounded,"Nunito","Varela Round",Segoe WPC,Segoe UI,sans-serif;}.macos{font-family:ui-rounded,"SF Pro Rounded",-apple-system,BlinkMacSystemFont,sans-serif;}.linux{font-family:"Nunito","Varela Round",system-ui,Ubuntu,Droid Sans,sans-serif;}.fa-power-off{color:var(--c-orange);}.fa-bug{color:var(--c-red);}.fa-download{color:var(--c-green);}.fa-circle-play{color:var(--c-blue);}.fa-circle-stop{color:var(--c-red);}.fa-circle-info{color:var(--c-blue);}.fa-file{color:var(--c-indigo);}.fa-python{color:#3776ab;}.fa-file-circle-exclamation{color:var(--c-red);}.fa-folder,.fa-folder-open{color:var(--c-yellow);}.fa-certificate{color:var(--c-red);}.fa-cube{color:var(--c-purple);}.fa-cubes{color:var(--c-purple);}.fa-gauge-high{color:var(--c-green);}.fa-tools,.fa-screwdriver-wrench{color:var(--c-teal);}.fa-arrows-rotate{color:var(--c-teal);}.fa-sliders{color:var(--c-pink);}.fa-trash-can{color:var(--c-red);}.fa-star{color:var(--c-yellow);}.fa-terminal{color:var(--c-teal);}.fa-plug{color:var(--c-green);}.fa-plus{color:var(--c-green);}.fa-gear{color:var(--fg-color-muted);}.fa-expand{color:var(--c-indigo);}.fa-bars{color:var(--accent-color);}.fa-bolt{color:var(--c-yellow);}.fa-microchip{color:var(--c-teal);}.fa-message{color:var(--c-pink);}.fa-circle-down{color:var(--c-green);}.fa-arrow-up-right-from-square{color:var(--accent-color);}.highlight{background:var(--bg-color-edit);border:1px solid var(--border-color);border-radius:6px;padding:3px 5px 3px 5px;line-height:1.35;white-space:nowrap;}.hidden{display:none;}.space-between{display:flex;justify-content:space-between;align-items:center;}.monospace{font-family:ui-monospace,"Droid Sans Mono","Cascadia Mono",Consolas,Menlo,monospace;font-weight:normal;white-space:pre;font-size:0.9rem;line-height:1.35;}.title-lines{display:flex;align-items:center;gap:8px;overflow:hidden;text-align:center;color:var(--accent-color-dark);font-weight:700;font-size:0.85em;letter-spacing:0.04em;text-transform:uppercase;}.title-lines:before,.title-lines:after{content:'';flex:1 1 auto;height:2px;border-radius:2px;background-color:var(--border-color);}.tabs{display:flex;align-items:flex-end;justify-content:space-between;user-select:none;font-size:1.1rem;}.tab{display:inline-flex;align-items:center;gap:0.35em;padding:5px 10px;border-radius:var(--radius) var(--radius) 0 0;cursor:pointer;transition:background-color var(--animation);}.tab:not(.active):hover{background:var(--accent-color-soft);}.tab.active{background:var(--bg-color-edit);box-shadow:inset 0 3px 0 var(--accent-color);font-weight:600;}.tab-content{display:none;flex:1;padding:5px 0px 5px 5px;}.tab-content.active{display:block;}body.page{height:auto;min-height:100%;padding:20px;line-height:1.8;}body.page h1{font-size:1.6em;color:var(--accent-color);}body.page h1::before{content:"";display:inline-block;width:1.4em;height:1.4em;margin-right:0.35em;vertical-align:-0.35em;background:url("assets/favicon.png") center / contain no-repeat;}body.page ol>li::marker{color:var(--accent-color);font-weight:800;}body.page button[id^="btn-conn-"]{background:var(--bg-color-edit);border-radius:var(--radius);box-shadow:var(--shadow-soft);margin:0 2px;}body.page button[id^="btn-conn-"].connected{background:var(--connected-color);color:#fff;}.button-row,.check-row{display:inline-flex;flex-wrap:wrap;align-items:center;vertical-align:middle;}.button-row{gap:0 4px;}.check-row{gap:0 1em;}