:root{--bg:#090b10;--panel:#11141b;--panel2:#171b24;--border:#252b37;--text:#e8ebf2;--muted:#8e97aa;--accent:#7896ff;--green:#4fe1a7;--danger:#ff6b7a;color-scheme:dark}*{box-sizing:border-box}html,body{height:100%;margin:0;overflow:hidden}body{font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;background:var(--bg);color:var(--text)}button,input,textarea,select{font:inherit}button,select{border:1px solid var(--border);color:var(--text);background:#161a22;border-radius:8px;padding:7px 10px}button{cursor:pointer}button:hover{background:#1e2430;border-color:#343c4b}button.primary{background:linear-gradient(180deg,#7896ff,#5f7ee9);border-color:#8ca5ff}button.active{border-color:var(--accent);box-shadow:inset 0 0 0 1px #7896ff55}button.small{padding:4px 8px;font-size:11px}.hidden{display:none!important}.divider{height:22px;width:1px;background:var(--border);margin:0 2px}kbd{border:1px solid #3a4150;border-bottom-width:2px;border-radius:4px;padding:1px 4px;font-size:10px;background:#0c0f15}#app{height:100%;display:grid;grid-template-rows:52px minmax(0,1fr) 150px}.topbar{display:flex;align-items:center;gap:16px;padding:0 12px;border-bottom:1px solid var(--border);background:#0d1016;z-index:20}.brand{display:flex;align-items:center;gap:9px;min-width:210px}.brand-mark{width:30px;height:30px;display:grid;place-items:center;border-radius:9px;background:linear-gradient(135deg,#6d8cff,#44d8a1);color:#061018;font-weight:900}.brand strong,.brand span{display:block}.brand strong{font-size:14px}.brand span{font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:.12em}.toolbar{display:flex;gap:5px;align-items:center;flex:1;min-width:0}.wire-color{display:grid;place-items:center;width:28px;height:28px;border:1px solid var(--border);border-radius:7px;overflow:hidden}.wire-color input{width:36px;height:36px;border:0;background:none;padding:0}.status-cluster{display:flex;gap:6px}.pill{border:1px solid #2c3543;border-radius:999px;font-size:10px;padding:4px 8px;color:#9fb0c8}.pill.on{color:#aaffd8;border-color:#265b4a;background:#10251e}.workspace{min-height:0;display:grid;grid-template-columns:230px minmax(0,1fr) 360px}.sidebar{min-height:0;background:var(--panel);display:flex;flex-direction:column}.left-panel{border-right:1px solid var(--border)}.right-panel{border-left:1px solid var(--border)}.panel-title,.editor-header,.console-head{min-height:42px;display:flex;align-items:center;justify-content:space-between;padding:0 10px;border-bottom:1px solid var(--border)}.panel-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#c0c8d8}.icon-btn{padding:2px 8px;background:transparent}.search{margin:9px;padding:8px 10px;border:1px solid var(--border);border-radius:8px;background:#0c0f15;color:var(--text);outline:none}.search:focus{border-color:var(--accent)}.category-chips{display:flex;gap:5px;overflow:auto;padding:0 8px 7px}.category-chips button{font-size:9px;padding:4px 7px;white-space:nowrap;border-radius:999px}.parts-list{overflow:auto;padding:0 8px 8px}.part-card{border:1px solid transparent;border-radius:9px;padding:7px;display:grid;grid-template-columns:34px 1fr;gap:8px;align-items:center;user-select:none}.part-card:hover{background:#171c25;border-color:#252e3b}.part-card .icon{width:32px;height:32px;display:grid;place-items:center;border-radius:8px;background:#0d1118;border:1px solid #252c38;font-size:17px}.part-card strong{display:block;font-size:11px}.part-card span{font-size:9px;color:var(--muted)}.part-card em{display:block;font-size:8px;color:#6f7d93;font-style:normal;margin-top:2px}.side-help{margin-top:auto;border-top:1px solid var(--border);padding:10px;font-size:10px;line-height:1.45;color:var(--muted)}.viewport-wrap{min-width:0;min-height:0;position:relative;background:#080a0e}#viewport{width:100%;height:100%;outline:none}#viewport canvas{display:block;width:100%;height:100%}.viewport-overlay{position:absolute;pointer-events:none;display:flex;gap:8px;align-items:center;color:#9ba5b9;font-size:10px}.viewport-overlay.top-left{top:10px;left:10px}.viewport-overlay.bottom-left{left:10px;bottom:10px;background:#080a0eb8;border:1px solid #242a35;border-radius:7px;padding:6px 8px}.mode-badge{background:#7896ff29;color:#b9c8ff;border:1px solid #7896ff59;font-weight:800;padding:3px 6px;border-radius:5px;font-size:8px;letter-spacing:.08em}.tool-hint{position:absolute;top:52px;left:50%;transform:translateX(-50%);background:#1b2230;border:1px solid #40506c;border-radius:999px;padding:7px 12px;color:#d8e1f5;font-size:11px;box-shadow:0 18px 45px #0005}.panel-tabs{display:grid;grid-template-columns:1fr 1fr 1fr;border-bottom:1px solid var(--border)}.tab{border:0;border-radius:0;background:#10131a;color:var(--muted);border-bottom:2px solid transparent;font-size:11px}.tab.active{color:#fff;background:#151922;border-bottom-color:var(--accent);box-shadow:none}.tab-page{display:none;min-height:0;flex:1}.tab-page.active{display:flex;flex-direction:column}.editor-header{font-size:11px;gap:6px}.editor-header select{padding:4px 6px;font-size:10px}#codeEditor,#hexEditor{flex:1;resize:none;border:0;outline:none;padding:12px;background:#0b0e13;color:#d7e0ef;font:11px/1.55 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;tab-size:2}.runtime-note{padding:8px 10px;border-top:1px solid var(--border);color:var(--muted);font-size:9px;line-height:1.45}.inspector{padding:12px;overflow:auto;font-size:11px}.inspector.empty{color:var(--muted)}.inspector h3{margin:0 0 12px;font-size:14px}.field{display:grid;grid-template-columns:1fr 125px;gap:10px;align-items:center;margin-bottom:9px}.field label{color:#adb6c8}.field input,.field select{width:100%;background:#0d1016;border:1px solid var(--border);color:var(--text);border-radius:6px;padding:6px 7px}.unit{color:var(--muted);font-size:9px}.instrument-stack{overflow:auto;padding:9px}.instrument-card{border:1px solid var(--border);background:#0d1016;border-radius:10px;padding:8px;margin-bottom:8px}.instrument-title{display:flex;gap:5px;align-items:center;margin-bottom:7px}.instrument-title strong{font-size:11px;margin-right:auto}.meter-display{font:600 27px/1.2 ui-monospace,monospace;color:#b5ffd9;background:#06120e;border:1px solid #17392c;border-radius:7px;padding:10px;text-align:right}.probe-label{font-size:9px;color:var(--muted);margin-top:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#scopeCanvas,#logicCanvas{width:100%;height:auto;background:#070a0e;border:1px solid #202633;border-radius:6px}.console-panel{min-height:0;border-top:1px solid var(--border);background:#0a0d12;display:flex;flex-direction:column}.console-head{min-height:34px;font-size:10px}#console{flex:1;overflow:auto;margin:0;padding:8px 12px;color:#aeb9cc;font:10px/1.5 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;white-space:pre-wrap}.menu{position:fixed;top:46px;z-index:100;min-width:190px;padding:5px;background:#151922;border:1px solid #303747;border-radius:9px;box-shadow:0 18px 45px #0007}.menu button{display:block;width:100%;text-align:left;border:0;background:transparent}dialog{width:min(680px,90vw);background:#131720;color:var(--text);border:1px solid #333b4a;border-radius:12px}dialog::backdrop{background:#000a}dialog textarea{width:100%;min-height:320px;resize:vertical;background:#090c11;color:#cfd8e7;border:1px solid var(--border);border-radius:8px;padding:10px;font:10px/1.5 ui-monospace,monospace}.dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:10px}.left-collapsed .workspace{grid-template-columns:0 minmax(0,1fr) 360px}.left-collapsed .left-panel{overflow:hidden;border:0}.console-collapsed #app{grid-template-rows:52px minmax(0,1fr) 34px}.console-collapsed #console{display:none}@media(max-width:1100px){.workspace{grid-template-columns:180px minmax(0,1fr) 300px}.brand{min-width:auto}.brand span{display:none}.toolbar button{padding:6px 7px;font-size:10px}.left-collapsed .workspace{grid-template-columns:0 minmax(0,1fr) 300px}}


/* Production shell / resilience improvements */
:root{--panel3:#0c1017;--accent-soft:#7896ff1c}
html{background:#090b10}body{min-width:760px}
.topbar{box-shadow:0 1px 0 #0006}.toolbar{overflow-x:auto;scrollbar-width:none}.toolbar::-webkit-scrollbar{display:none}
.toolbar-group{display:flex;gap:5px;align-items:center;padding-right:5px}.toolbar-group+.toolbar-group{border-left:1px solid var(--border);padding-left:8px}
.status-cluster{white-space:nowrap}.status-dot{width:6px;height:6px;border-radius:50%;display:inline-block;background:#677184;margin-right:4px}.pill.on .status-dot{background:#4fe1a7;box-shadow:0 0 8px #4fe1a788}
.editor-actions{display:flex;gap:5px;align-items:center;flex-wrap:wrap}.editor-actions select{max-width:138px}
.app-subtle{font-size:9px;color:#69758a}.instrument-card .small.primary{padding:4px 8px}
.boot-screen{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;background-color:#06080c;background-image:linear-gradient(#7896ff0a 1px,transparent 1px),linear-gradient(90deg,#7896ff0a 1px,transparent 1px),radial-gradient(circle at 50% 45%,#10213a 0,transparent 58%);background-size:36px 36px,36px 36px,100% 100%;color:#eef2ff;transition:opacity .22s ease}.boot-screen>div{width:min(520px,calc(100vw - 48px));padding:0;background:transparent;text-align:left;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.boot-kicker{display:flex;align-items:center;gap:10px;margin-bottom:14px;color:#71809a;font-size:10px;letter-spacing:.14em}.boot-kicker b{color:#75e7b7;font-weight:700}.boot-screen strong{display:block;margin:0 0 10px;font-size:clamp(25px,5vw,40px);line-height:1;font-weight:650;letter-spacing:-.04em}.boot-screen span{display:block;color:#8794aa;font-size:10px;line-height:1.5}.boot-screen .boot-status{display:flex;align-items:center;gap:8px;letter-spacing:.12em}.boot-status::before{content:"";width:5px;height:5px;background:#7896ff;box-shadow:0 0 12px #7896ff}.boot-screen small{display:block;color:#536178;margin-top:13px;font-size:9px;letter-spacing:.16em}.boot-loader{position:relative;width:100%;height:2px;margin-top:22px;overflow:hidden;background:#182131}.boot-loader::after{content:"";position:absolute;inset:0 auto 0 0;width:34%;background:linear-gradient(90deg,transparent,#7896ff 55%,#65e4b1);animation:boot-scan 1.15s ease-in-out infinite}@keyframes boot-scan{from{transform:translateX(-110%)}to{transform:translateX(300%)}}.boot-error .boot-loader{display:none}.boot-error strong{color:#ff7f8b}.boot-error span{color:#b4bed0;font-size:11px;letter-spacing:0}.boot-error small{letter-spacing:.04em}
.help-strip{padding:8px 10px;border-top:1px solid var(--border);background:#0c0f15;color:#758198;font-size:9px;line-height:1.45}.help-strip b{color:#b7c2d4}
#appVersion{opacity:.65}.panel-tabs{position:relative}.tab-page{overflow:hidden}
#codeEditor,#hexEditor{min-height:180px}.instrument-stack{min-height:0}
@media(max-width:900px){body{min-width:0;overflow:auto}#app{min-width:760px}.workspace{grid-template-columns:180px minmax(360px,1fr) 300px}}
.menu-label{padding:7px 8px 4px;color:#6f7d93;font:9px/1 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:.16em}.menu-separator{height:1px;margin:5px 0;background:#252b37}
.panel-reopen{position:absolute;left:0;top:50%;z-index:12;display:none;align-items:center;gap:5px;transform:translateY(-50%);padding:9px 8px 9px 6px;border:1px solid #303747;border-left:0;border-radius:0 7px 7px 0;background:#151922;color:#b9c8ff;font:10px ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;box-shadow:0 10px 30px #0006}.panel-reopen:hover{background:#202a3a;border-color:#50658d}.left-collapsed #expandLeft{display:flex}

/* Interactive preset results */
.button-link{display:inline-flex;align-items:center;border:1px solid var(--border);color:var(--text);background:#161a22;border-radius:8px;padding:7px 10px;text-decoration:none;white-space:nowrap}.button-link:hover{background:#1e2430;border-color:#343c4b}
.panel-tabs{grid-template-columns:repeat(4,1fr)}.interaction-hint{color:#aaffd8}
.result-panel{height:100%;overflow:auto;padding:18px;background:radial-gradient(circle at 100% 0,#7896ff17,transparent 42%),#0d1016}.result-kicker{display:flex;align-items:center;gap:7px;color:#8d9bb2;font:9px ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:.16em}.live-dot{width:7px;height:7px;border-radius:50%;background:#4fe1a7;box-shadow:0 0 12px #4fe1a799}.result-panel h2{margin:11px 0 6px;font-size:20px}.result-panel>p{margin:0 0 15px;color:#929db1;font-size:11px;line-height:1.55}.result-controls{display:grid;gap:9px;margin-bottom:12px}.result-control{display:grid;gap:7px;padding:10px;border:1px solid #293242;border-radius:9px;background:#121720}.result-control label{display:flex;justify-content:space-between;color:#c5cedd;font-size:10px}.result-control output{color:#75e7b7;font-family:ui-monospace,monospace}.result-control input[type=range]{width:100%;accent-color:#7896ff}.result-control .hold-button{width:100%;padding:12px}.result-control .hold-button.pressed{background:#245b48;border-color:#4fe1a7;transform:translateY(1px)}
.result-readout{display:grid;gap:4px;margin:12px 0;padding:13px;border:1px solid #263143;border-radius:10px;background:#080c12}.result-readout>span{color:#69768c;font:8px ui-monospace,monospace;letter-spacing:.16em}.result-readout strong{color:#b9ffdd;font:600 23px/1.2 ui-monospace,monospace}.result-readout small{color:#7f8ba0;font-size:9px}.virtual-display{display:block;width:100%;min-height:86px;margin:12px 0;padding:16px;border:5px solid #193f35;border-radius:8px;background:#07120d;color:#b6df79;text-align:left;white-space:pre-line;font:600 17px/1.45 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;box-shadow:inset 0 0 22px #4fe1a711}.virtual-display.oled{border-color:#164158;background:#041015;color:#8ee8ff;box-shadow:inset 0 0 22px #65dfff18}.virtual-display span{display:block}.result-actions{display:flex;align-items:center;gap:12px;margin-top:13px}.result-actions a{color:#9db1f5;font-size:10px}.display-dialog{width:min(620px,90vw)}.display-dialog-head{display:flex;justify-content:space-between;align-items:flex-start}.display-dialog-head h3{margin:3px 0 10px}.display-dialog-head small{color:#758198;letter-spacing:.14em}.virtual-display.enlarged{min-height:190px;padding:28px;font-size:28px}.display-dialog p{color:var(--muted);font-size:11px;line-height:1.5}
@media(max-width:1100px){.button-link{padding:6px 7px;font-size:10px}.result-panel{padding:13px}.result-readout strong{font-size:19px}.viewport-overlay.bottom-left span:nth-child(-n+4){display:none}}

/* Camera utilities and collapsible result/code panel */
.panel-tabs{grid-template-columns:repeat(4,1fr) 30px}.panel-close-right{padding:0;border:0;border-left:1px solid var(--border);border-radius:0;background:#0d1016;color:#8793a8;font-size:17px}.panel-close-right:hover{background:#202634;color:#fff}
.panel-reopen-right{left:auto;right:0;border-right:0;border-left:1px solid #303747;border-radius:7px 0 0 7px;padding:9px 6px 9px 8px}.left-collapsed:not(.right-collapsed) .panel-reopen-right{display:none}.right-collapsed .panel-reopen-right{display:flex}.right-collapsed .workspace{grid-template-columns:230px minmax(0,1fr) 0}.right-collapsed .right-panel{overflow:hidden;border:0}.left-collapsed.right-collapsed .workspace{grid-template-columns:0 minmax(0,1fr) 0}
.view-menu{min-width:270px}.view-menu button.active{color:#c8d3ff;background:#7896ff18}.view-shortcut{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:start;margin:6px;padding:10px;border:1px solid #2b3547;border-radius:8px;background:#0c1017;color:#7f8ba0;font-size:9px;line-height:1.45}.view-shortcut kbd{margin-top:1px;color:#dce4f5}.view-shortcut strong{display:block;color:#c4cede;font-size:10px}.view-lock-badge{color:#aaffd8;border-color:#4fe1a766;background:#4fe1a718}
@media(max-width:1100px){.right-collapsed .workspace{grid-template-columns:180px minmax(0,1fr) 0}.left-collapsed.right-collapsed .workspace{grid-template-columns:0 minmax(0,1fr) 0}}

/* Explicit simulation states */
.sim-controls{padding:3px;border:1px solid #242c39;border-radius:10px;background:#090c11}.sim-control{position:relative;min-width:68px;transition:background .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease,opacity .16s ease}.run-control{background:#121721;border-color:#33405a;color:#c7d2e7}.run-control:hover{background:#1a2230;border-color:#53698f}.run-control.is-running{background:linear-gradient(180deg,#24694f,#174d3a);border-color:#4fe1a7;color:#ecfff7;box-shadow:0 0 0 1px #4fe1a733,0 0 16px #4fe1a722}.run-control.is-running::before{content:"";display:inline-block;width:6px;height:6px;margin-right:6px;border-radius:50%;background:#8fffcf;box-shadow:0 0 8px #8fffcf;animation:sim-pulse 1.15s ease-in-out infinite}.run-control.is-busy{background:#2a3140;border-color:#7896ff;color:#dbe3ff;opacity:1}.stop-control:disabled{cursor:not-allowed;opacity:.35;background:#11141a;color:#727b8c}.stop-control.is-ready{background:linear-gradient(180deg,#6d2632,#4b1a23);border-color:#ff6b7a;color:#fff1f3;box-shadow:0 0 0 1px #ff6b7a22}.stop-control.is-ready:hover{background:#7f2b39;border-color:#ff8b96}.sim-control:focus-visible{outline:2px solid #b7c5ff;outline-offset:2px}.result-actions .run-control{min-width:145px}.result-actions .run-control.is-running{min-width:160px}@keyframes sim-pulse{50%{opacity:.42;transform:scale(.8)}}

/* Physical placement, pin map and engineering readout */
body{min-width:0}#app{width:100vw;max-width:100%;min-width:0;overflow:hidden}.topbar,.workspace,.console-panel{width:100%;min-width:0}.topbar{overflow:hidden}.toolbar{max-width:100%}.status-cluster{flex:0 0 auto}
.tool-hint.error{border-color:#ff6b7a;background:#35131a;color:#ffd8dc;box-shadow:0 14px 40px #0008,0 0 0 1px #ff6b7a33}
.fix-missing-control{border-color:#8a6be8;background:linear-gradient(180deg,#34285a,#241d42);color:#eee9ff;box-shadow:inset 0 0 0 1px #a48aff22}.fix-missing-control:hover{border-color:#b29cff;background:#41316d}.fix-missing-control.is-fixing{color:#d9d0ff;opacity:.78}.fix-missing-control.is-fixed{border-color:#4fe1a7;background:#173f32;color:#baffdf}
.pin-legend{position:absolute;right:10px;bottom:10px;z-index:8;display:grid;grid-template-columns:auto auto;gap:5px 10px;padding:8px 9px;border:1px solid #293242;border-radius:8px;background:#080c12df;backdrop-filter:blur(8px);color:#a5afc0;font:9px/1.1 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;pointer-events:none}.pin-legend strong{grid-column:1/-1;color:#6f7b90;font-size:8px;letter-spacing:.14em}.pin-legend span{display:flex;align-items:center;gap:5px;white-space:nowrap}.pin-legend i{width:7px;height:7px;border-radius:50%;box-shadow:0 0 8px currentColor}.pin-available{color:#35d98a;background:#35d98a}.pin-connected{color:#f3bf3f;background:#f3bf3f}.pin-unavailable{color:#ff5f6d;background:#ff5f6d}
.firmware-pin-map{position:absolute;top:10px;right:10px;z-index:9;width:min(190px,42%);padding:9px;border:1px solid #334158;border-radius:9px;background:#080c12e8;backdrop-filter:blur(9px);box-shadow:0 12px 30px #0006;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;pointer-events:none}.firmware-pin-map header{display:flex;justify-content:space-between;gap:8px;margin-bottom:6px;color:#718097;font-size:8px;letter-spacing:.13em}.firmware-pin-map header small{overflow:hidden;color:#53627a;text-overflow:ellipsis;white-space:nowrap}.firmware-pin-row{display:grid;grid-template-columns:7px 38px minmax(0,1fr);gap:6px;align-items:center;padding:4px 3px;border-top:1px solid #202938}.firmware-pin-row i{width:7px;height:7px;border-radius:50%;background:#35d98a;box-shadow:0 0 8px #35d98a}.firmware-pin-row.connected i{background:#f3bf3f;box-shadow:0 0 8px #f3bf3f}.firmware-pin-row.unavailable i{background:#ff5f6d;box-shadow:0 0 8px #ff5f6d}.firmware-pin-row b{color:#e6ebf5;font-size:10px}.firmware-pin-row span{overflow:hidden;color:#aeb9cc;font-size:9px;text-overflow:ellipsis;white-space:nowrap}
.technical-output{margin:12px 0;padding:11px;border:1px solid #293445;border-radius:10px;background:linear-gradient(145deg,#101722,#090d13);box-shadow:inset 0 1px 0 #ffffff08}.technical-output-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:9px;color:#77849a;font:8px ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:.15em}.technical-output-title small{padding:3px 5px;border:1px solid #394355;border-radius:4px;color:#8490a3;font-size:7px;letter-spacing:.1em}.technical-output-title small.live{border-color:#2d785d;background:#123326;color:#8fffcf;box-shadow:0 0 10px #4fe1a722}.technical-output dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:0}.technical-output dl div{min-width:0;padding:7px;border:1px solid #222b39;border-radius:7px;background:#080c12}.technical-output dt{margin-bottom:4px;color:#647188;font-size:8px}.technical-output dd{margin:0;overflow:hidden;color:#d7dfed;font:600 10px ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;text-overflow:ellipsis;white-space:nowrap}.technical-output dd.warning{color:#ff8d99}.technical-output p{margin:8px 0 0;color:#78859a;font:8px ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}
.fix-report{margin:10px 0;padding:10px;border:1px solid #315745;border-radius:9px;background:#0d2119;color:#a8e9c9;font:9px/1.5 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.fix-report.warning{border-color:#725d32;background:#241d0f;color:#f0d494}.fix-report strong{display:block;margin-bottom:3px;color:#e9fff5;font-size:10px}.fix-report span{color:inherit}

/* Responsive shell: panels become overlays instead of pushing content off-screen. */
@media(max-width:1450px){.status-cluster #saveStatus{display:none}}@media(max-width:1240px){.topbar{gap:8px}.brand{min-width:165px}}
@media(max-width:1000px){body{min-width:0}.workspace{grid-template-columns:170px minmax(0,1fr) 280px}.left-collapsed .workspace{grid-template-columns:0 minmax(0,1fr) 280px}.right-collapsed .workspace{grid-template-columns:170px minmax(0,1fr) 0}.brand{min-width:auto}.brand span{display:none}.status-cluster #statsBadge{display:none}.toolbar-group{padding-right:2px}.toolbar-group+.toolbar-group{padding-left:5px}}
@media(max-width:820px){html,body{width:100%;max-width:100%;overflow:hidden}#app{min-width:0;width:100%;grid-template-rows:48px minmax(0,1fr) 118px}.console-collapsed #app{grid-template-rows:48px minmax(0,1fr) 34px}.topbar{min-width:0;gap:6px;padding:0 7px;overflow:hidden}.brand{flex:0 0 32px}.brand-mark{width:30px;height:30px}.brand>div:last-child{display:none}.toolbar{min-width:0;gap:3px;overflow-x:auto;overscroll-behavior-inline:contain}.toolbar-group{flex:0 0 auto}.toolbar button,.button-link{padding:6px 7px;font-size:10px}.status-cluster{display:none}.workspace,.left-collapsed .workspace,.right-collapsed .workspace,.left-collapsed.right-collapsed .workspace{position:relative;grid-template-columns:minmax(0,1fr);overflow:hidden}.sidebar{position:absolute;inset-block:0;z-index:35;width:min(286px,88vw);box-shadow:0 18px 50px #000b}.left-panel{left:0;border-right:1px solid #384154}.right-panel{right:0;border-left:1px solid #384154}.left-collapsed .left-panel,.right-collapsed .right-panel{display:none}.left-collapsed #expandLeft,.right-collapsed #expandRight{display:flex}.panel-reopen{z-index:42}.viewport-overlay.bottom-left{display:none}.pin-legend{right:8px;bottom:8px}.console-head{min-height:32px}#console{padding:7px 9px}.result-panel{padding:12px}}
@media(max-width:520px){.pin-legend{grid-template-columns:1fr;padding:6px 7px}.pin-legend strong{display:none}.pin-legend span{font-size:8px}.firmware-pin-map{top:8px;right:8px;width:min(155px,48%);padding:7px}.firmware-pin-map header small{display:none}.firmware-pin-row{grid-template-columns:7px 32px minmax(0,1fr);gap:5px}.technical-output dl{grid-template-columns:1fr}.technical-output dl div{display:flex;justify-content:space-between;gap:8px}.toolbar-group:nth-child(4){padding-right:40px}}

/* Runtime status lives with the Serial / Simulator controls. */
.console-head{gap:12px}.console-head>strong{flex:0 0 auto}.console-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;min-width:0}.console-head .status-cluster{display:flex!important;align-items:center;gap:5px;min-width:0;overflow-x:auto;scrollbar-width:none}.console-head .status-cluster::-webkit-scrollbar{display:none}.console-head .pill{display:inline-flex!important;align-items:center;flex:0 0 auto;min-height:23px;padding:3px 8px}.console-buttons{display:flex;flex:0 0 auto;gap:4px}
@media(max-width:700px){.console-head{gap:6px;padding-inline:7px}.console-head>strong{display:none}.console-actions{width:100%}.console-head .status-cluster{flex:1}.console-head .pill{font-size:8px;padding-inline:6px}.console-buttons button{font-size:9px;padding:4px 6px}}
.credit-link{color:inherit;text-decoration:none}.credit-link:hover,.credit-link:focus-visible{color:#b9c8ff;text-decoration:underline}
.legal-links{display:flex;flex-wrap:wrap;gap:4px 8px;margin-top:8px;padding-top:7px;border-top:1px solid #252b37}.legal-links a{color:#8290a8;text-decoration:none}.legal-links a:hover,.legal-links a:focus-visible{color:#b9c8ff;text-decoration:underline}
