/* VoltPRo Breadboard Studio: original responsive workbench design. */
body{--bg:#11181c;--panel:#172126;--line:#304047;--cyan:#79e0bd;--green:#79e0bd;--muted:#a0b1b7;background:var(--bg)}
.app{height:100dvh;min-height:0;grid-template-rows:54px 48px minmax(0,1fr) 28px;overflow:hidden}
.top{padding:8px 14px;background:#172125;gap:12px}.brand strong{font-size:16px}.brand small{font-size:9px}.nav{flex-wrap:nowrap}.nav .btn{font-size:10px;padding:6px 9px}
.toolbar{padding:5px 12px;flex-wrap:nowrap;background:#141e23;overflow-x:auto;white-space:nowrap;justify-content:flex-start}.toolbar .tools{flex-wrap:nowrap}.toolbar .tools:last-child{margin-left:auto}.toolbar .btn{font-size:11px;min-height:32px;padding:6px 9px}.toolbar .primary{background:#28765e;color:white;border-color:#4fb58f}.toolbar .status{min-width:150px;font-size:10px}
.layout{grid-template-columns:190px minmax(0,1fr) 250px;min-height:0}.layout>.side{padding:12px;overflow-y:auto;min-height:0}.layout>.right{display:block;grid-column:auto;background:#162126}.board-area{padding:10px;display:flex;flex-direction:column;min-height:0;overflow:hidden;background:radial-gradient(#324148 1px,transparent 1px),#11191e;background-size:22px 22px}.board-head{width:100%;margin:0 0 8px;flex:0 0 auto;gap:8px}.board-head strong{font-size:10px;letter-spacing:.12em;color:#b2c4ca}.board-head span{font-size:9px}.canvas-controls .btn{padding:5px 8px;font-size:10px;min-height:27px}.physical-canvas-wrap{flex:1 1 0;min-height:160px;height:auto;border-radius:8px;border-color:#33434a}.physical-canvas-wrap canvas.physical-minimap{width:140px;height:64px}.canvas-controls .btn[hidden]{display:none}.view-note{font:10px/1.4 ui-monospace,monospace;margin:6px 0 0}.board-shell{max-height:100%;margin:auto;overflow:auto}.title{color:#9db7bf;font-size:10px;letter-spacing:.16em}.part{background:#162329;border-radius:5px;padding:8px;margin-bottom:5px}.part .glyph{background:#22343b;color:#8eeacb;min-width:29px;height:28px}.part small{font-size:9px}.hint{font-size:11px}.side .inspector-box{background:#132027;border-radius:6px}.side .inspector-box h3{font-size:11px}.side .message{font-size:11px}.footer{font:9px/1.3 ui-monospace,monospace;padding:6px 12px;white-space:nowrap;overflow:hidden;background:#162126}.footer span:last-child{display:none}
.bb-search{width:100%;padding:8px 9px;background:#0e191e;color:#e6f0fa;border:1px solid #3a4b53;border-radius:5px;margin-bottom:10px;font-size:11px}.bb-group{margin:15px 0 7px;font:9px ui-monospace,monospace;color:#92aab3;letter-spacing:.15em}.bb-tools{display:flex;gap:4px;margin-bottom:10px}.bb-tools button{flex:1;padding:7px 3px;border:1px solid #354a55;background:#16252c;color:#c7d9df;font-size:10px;border-radius:4px;cursor:pointer}.bb-tools button[aria-pressed=true]{border-color:#6edfb9;color:#91f1ce;background:#1f3a35}
.bb-name{width:155px;background:#101c21;color:#e6f0fa;border:1px solid #354a55;border-radius:5px;padding:7px;font-size:11px}.bb-top-actions{display:flex;gap:5px;align-items:center}.bb-top-actions .btn{font-size:10px;padding:6px 9px}
.bb-scope{height:225px;flex:0 0 auto;display:grid;grid-template-rows:auto minmax(0,1fr) auto;background:#12212a;border:1px solid #3a505c;border-radius:8px;margin-top:8px;overflow:hidden}.bb-scope[hidden]{display:none}.bb-scope-head{display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding:7px 10px}.bb-scope-head b{font:10px ui-monospace,monospace;letter-spacing:.1em;color:#86e2c1}.bb-scope input,.bb-scope select{max-width:145px;padding:5px;background:#0e1a23;color:#dcecf1;border:1px solid #3c5665;border-radius:4px;font-size:10px}.bb-scope input{width:64px}.bb-scope label{font-size:10px;color:#a5bdc8;display:flex;gap:5px;align-items:center}.bb-scope button{font-size:10px;padding:4px 8px;min-height:26px}.bb-scope svg{width:100%;height:100%;min-height:0;background:#0b151e}.bb-scope svg text{font:9px ui-monospace,monospace;fill:#aac1d0}.bb-readout{font:10px/1.4 ui-monospace,monospace;padding:5px 10px;color:#9de8c6;min-height:26px}
.bb-welcome{position:absolute;inset:20px 20px auto;max-width:440px;margin:auto;background:#172b34f5;border:1px solid #49706f;border-radius:10px;padding:22px;box-shadow:0 18px 60px #0006;z-index:10}.bb-welcome[hidden]{display:none}.bb-welcome h1{font-size:25px;line-height:1.2;margin:8px 0 12px;letter-spacing:-.04em}.bb-welcome p{font-size:12px;color:#b8cbd1;line-height:1.65}.bb-kicker{font:9px ui-monospace,monospace;letter-spacing:.15em;color:#90e7c9}.bb-examples{display:grid;grid-template-columns:1fr 1fr;gap:7px}.bb-examples button{text-align:left;padding:11px;background:#203941;border:1px solid #456a6d;color:#edf7f8;border-radius:6px;cursor:pointer;font:12px system-ui}.bb-examples small{display:block;margin-top:5px;color:#b8cbce;font-size:10px}.bb-welcome-close{position:absolute;top:7px;right:8px;background:none;color:#cbdbe1;border:0;font-size:20px;cursor:pointer}
.bb-diagnostic{border-left:2px solid #e6bb70;padding:8px;font-size:11px;line-height:1.6;color:#cdd8dc;margin:10px 0}.bb-probe{font:11px/1.7 ui-monospace,monospace;color:#90e7c9;margin:12px 0}.bb-field{display:grid;gap:5px;margin:10px 0;font-size:11px;color:#c2d3d8}.bb-field input,.bb-field select{width:100%;background:#0d1a20;color:#e6f0fa;border:1px solid #3e5661;border-radius:4px;padding:6px}.bb-field input[type=range]{accent-color:#75d8b5;padding:0}.bb-shortcuts{color:#9ab3bd;font:10px/1.8 ui-monospace,monospace;margin-top:12px}.bb-activity{font:10px/1.6 ui-monospace,monospace;max-height:100px;overflow:auto;white-space:pre-wrap;color:#acc9cf}
.bb-dialog{max-width:470px;border:1px solid #517777;border-radius:10px;padding:24px;background:#14262f;color:#e5f2f6;font:13px/1.6 system-ui}.bb-dialog::backdrop{background:#0009}.bb-dialog h2{margin-top:0}.bb-dialog a{color:#96efd2}.bb-dialog button{margin:4px}
:focus-visible{outline:2px solid #91e9c8;outline-offset:3px}[hidden]{display:none!important}
.layout.bb-parts-hidden>.side:not(.right),.layout.bb-inspector-hidden>.right{display:none}
@media(min-width:1101px){.layout.bb-parts-hidden{grid-template-columns:minmax(0,1fr) 250px}.layout.bb-inspector-hidden{grid-template-columns:190px minmax(0,1fr)}.layout.bb-parts-hidden.bb-inspector-hidden{grid-template-columns:minmax(0,1fr)}}
@media(max-width:1100px){.layout{grid-template-columns:170px minmax(0,1fr)}.layout>.right{position:fixed;right:0;top:102px;bottom:28px;width:260px;z-index:30;border:1px solid #45616a;box-shadow:-15px 0 50px #0006;display:none}.layout.bb-inspector-open>.right{display:block}.bb-name{width:125px}.top .nav a:not(:last-child){display:none}.bb-scope-head{gap:4px}.physical-canvas-wrap{min-height:150px}}
@media(min-width:701px) and (max-width:1100px){.layout.bb-parts-hidden{grid-template-columns:minmax(0,1fr)}}
@media(max-width:700px){.app{grid-template-rows:54px 46px minmax(0,1fr) 25px}.layout{grid-template-columns:minmax(0,1fr)}.layout>.side:not(.right){position:fixed;left:0;top:100px;bottom:25px;width:195px;z-index:35;display:none;border-right:1px solid #51717b}.layout.bb-parts-open>.side:not(.right){display:block}.brand small{font-size:8px}.top{flex-direction:row;align-items:center;padding:7px}.bb-top-actions .btn{padding:5px;font-size:9px}.bb-name{width:110px}.top .nav{display:none}.board-head strong{font-size:9px}.board-head span{display:none}.board-area{padding:6px}.bb-scope{height:230px}.bb-welcome{inset:15px 8px auto;padding:16px}.bb-welcome h1{font-size:23px}.footer span:nth-child(2){display:none}.physical-canvas-wrap canvas.physical-minimap{width:95px;height:42px}}

.bb-pin-table{font-size:11px;width:100%;border-collapse:collapse;margin:12px 0}.bb-pin-table th,.bb-pin-table td{text-align:left;padding:5px;border-bottom:1px solid #294451}

.part .glyph{max-width:38px;overflow:hidden;font-size:8px;word-break:break-all;line-height:1.1;flex-shrink:0}
