.electronics-inspector{flex:1;min-height:0;background:#05111a;color:#cfdee7;overflow:auto;scrollbar-width:thin;scrollbar-color:#294554 transparent}
.electronics-inspector[hidden],.electronics-inspector [hidden]{display:none!important}
.electronics-root{display:flex;flex-direction:column;min-height:100%;padding:25px 28px 0;--pcb-cyan:#69deed;--pcb-amber:#dca966;--pcb-muted:#7f9aaa}
.electronics-heading{display:flex;justify-content:space-between;align-items:center;gap:20px}
.electronics-eyebrow{font-family:var(--mono,monospace);font-size:8px;letter-spacing:1.5px;color:#6c97aa;line-height:1.6}
.electronics-heading h2{font-size:21px;line-height:1.5;font-weight:500;letter-spacing:-.6px;margin:7px 0 0;color:#e2f0f5}
.electronics-source-status{font:9px var(--mono,monospace);line-height:1.6;color:#8fb7b9;border:1px solid #214a51;background:#0b242c;padding:7px 10px;border-radius:3px;white-space:nowrap}
.electronics-source-status.is-error{color:#e9ba8f;background:#281d17;border-color:#674a30}
.electronics-tabs{display:flex;gap:20px;margin-top:19px;border-bottom:1px solid #21404f}
.electronics-button{font-family:inherit;font-size:10px;border:1px solid #294554;border-radius:3px;background:#0b1e2a;color:#a0b8c7;padding:7px 10px;line-height:1.5;cursor:pointer;transition:color .15s,border-color .15s,background .15s}
.electronics-button:hover{background:#132e3b;color:#e2f6fb;border-color:#50798c}
.electronics-inspector button:focus-visible,.electronics-inspector select:focus-visible,.electronics-inspector a:focus-visible,.electronics-inspector svg:focus-visible{outline:2px solid #8ceaf4;outline-offset:3px}
.electronics-tabs .electronics-button{background:transparent;border:0;border-bottom:2px solid transparent;border-radius:0;padding:9px 0 11px;font-size:11px;color:#6c91a3}
.electronics-tabs .electronics-button[aria-selected=true]{color:#bceff6;border-bottom-color:#7cdeec}
.electronics-subline{font-size:9px;line-height:1.8;color:#6c8e9f;margin:12px 0 14px}
.electronics-toolbar{display:flex;justify-content:space-between;align-items:flex-end;gap:14px;margin-bottom:13px;flex-wrap:wrap}
.electronics-board-picker{display:flex;flex-direction:column;gap:6px;min-width:200px;max-width:42%}
.electronics-board-picker>span{font:7px var(--mono,monospace);letter-spacing:1px;color:#7d9daf}
.electronics-inspector select{display:block;max-width:100%;height:32px;border-radius:3px;border:1px solid #2c4859;padding:0 28px 0 9px;background:#0b1d29;color:#c6dfe9;font-size:10px;text-overflow:ellipsis}
.electronics-layer-controls{display:flex;gap:5px;flex-wrap:wrap}
.electronics-layer-controls .electronics-button{font-size:9px;padding:6px 8px;background:#071823;border-color:#263e4d;color:#718c9d}
.electronics-layer-controls .electronics-button:before{content:'';display:inline-block;width:5px;height:5px;border-radius:1px;background:#425361;margin-right:6px;vertical-align:1px}
.electronics-layer-controls .electronics-button[aria-pressed=true]{color:#cee4ed;background:#112935;border-color:#496776}
.electronics-layer-controls .layer-top[aria-pressed=true]:before{background:var(--pcb-cyan);box-shadow:0 0 7px #5ce7ee40}
.electronics-layer-controls .layer-bottom[aria-pressed=true]:before{background:var(--pcb-amber)}
.electronics-layer-controls .layer-parts[aria-pressed=true]:before{background:#a7bdc7}
.electronics-layer-controls .layer-labels[aria-pressed=true]:before{background:#b5e2dd}
.electronics-layer-controls .layer-pours[aria-pressed=true]:before{background:#82a4ba}
.electronics-body{display:grid;grid-template-columns:minmax(0,1fr) 242px;flex:1;min-height:430px;border:1px solid #284454;border-radius:4px;overflow:hidden;background:#06141e}
.electronics-stage{position:relative;min-width:0;min-height:430px;overflow:hidden;background-color:#06141e;background-image:radial-gradient(circle at center,#32506166 .7px,transparent .9px);background-size:22px 22px}
.electronics-stage:after{content:'';pointer-events:none;position:absolute;inset:0;background:radial-gradient(ellipse at center,transparent 50%,#020b1250 100%)}
.electronics-stage-caption{position:absolute;top:17px;left:18px;right:18px;display:flex;justify-content:space-between;gap:12px;pointer-events:none;z-index:1;color:#517a8e;font:7px var(--mono,monospace);letter-spacing:1.2px}
.electronics-board-canvas{display:block;position:absolute;inset:39px 16px 52px;width:calc(100% - 32px);height:calc(100% - 91px);overflow:visible;touch-action:none;cursor:grab;user-select:none}
.electronics-board-canvas.is-panning{cursor:grabbing}
.electronics-geometry{transition:opacity .15s}
.electronics-outline{stroke:#577d8c;opacity:.8}
.electronics-trace{opacity:.86;transition:opacity .12s;cursor:pointer}
.copper-top{stroke:var(--pcb-cyan);fill:var(--pcb-cyan)}
.copper-bottom{stroke:var(--pcb-amber);fill:var(--pcb-amber)}
.electronics-pour{opacity:.55;fill:none;cursor:pointer}
.electronics-trace{fill:none}
.electronics-geometry.traces.bottom{opacity:.8}
.electronics-component{stroke:#91b1bb;fill:none;opacity:.77;cursor:pointer;transition:opacity .12s}
.electronics-component.component-bottom{stroke:#ae9274}
.electronics-pad{stroke:none;cursor:pointer;opacity:.96}
.copper-through{fill:#b5d5ce}
.electronics-via{fill:#9fc2bd;cursor:pointer;stroke:none}
.electronics-drill{fill:#041018;stroke:#96b4b8;stroke-width:.035}
.electronics-mounting-hole{fill:#041018;stroke:#527c8a;stroke-width:.09}
.electronics-reference{font-family:var(--mono,monospace);fill:#d1e9e7;paint-order:stroke;stroke:#04121c;stroke-width:.18;pointer-events:none}
.electronics-geometry .is-dim{opacity:.1}
.electronics-geometry .is-selected{opacity:1;filter:drop-shadow(0 0 .13px #c1faff)}
.electronics-geometry .electronics-component.is-selected{stroke:#f3d4a5}
.electronics-view-tools{position:absolute;left:17px;bottom:17px;display:flex;align-items:center;gap:3px;z-index:2;padding:3px;background:#081b27e8;border:1px solid #294655;border-radius:4px}
.electronics-view-tools .electronics-button{font-size:10px;padding:4px 8px;background:transparent;border-color:transparent}
.electronics-view-tools .electronics-button:first-child,.electronics-view-tools .electronics-button:nth-child(3){font-size:17px;line-height:18px;padding:2px 8px}
.electronics-view-tools .electronics-button:hover{background:#183747}
.electronics-zoom{font:8px var(--mono,monospace);min-width:35px;text-align:center;color:#7ba3b5}
.electronics-stage-help{position:absolute;left:18px;bottom:61px;font-size:8px;color:#4d7589;pointer-events:none}
.electronics-board-dimensions{position:absolute;right:18px;bottom:25px;font:8px var(--mono,monospace);color:#739aab;pointer-events:none}
.electronics-side{border-left:1px solid #284454;background:#091923;min-width:0;max-height:650px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#2e4c5d transparent}
.electronics-selectors{display:flex;flex-direction:column;gap:12px;padding:17px;border-bottom:1px solid #213b49}
.electronics-selectors label{display:flex;flex-direction:column;gap:7px}
.electronics-selectors label>span{font-size:9px;color:#89a8b9}
.electronics-selectors select{width:100%;font:9px var(--mono,monospace);height:30px}
.electronics-selection,.electronics-source{padding:18px 17px;border-bottom:1px solid #213b49;overflow-wrap:anywhere}
.electronics-source{border-bottom:0}
.electronics-selection h3{font:500 15px var(--mono,monospace);line-height:1.5;margin:8px 0 14px;color:#d9ecf2}
.electronics-selection p{font-size:9px;line-height:1.9;color:#6e91a4}
.electronics-selection dl,.electronics-endpoint dl{margin:0}
.electronics-detail-row{display:flex;flex-direction:column;gap:5px;margin:0 0 11px}
.electronics-detail-row dt{font-size:8px;color:#678b9e}
.electronics-detail-row dd{font:9px var(--mono,monospace);line-height:1.7;margin:0;color:#b4cfdb}
.electronics-selection-note{border-top:1px solid #203946;padding-top:11px;margin-bottom:0}
.electronics-clear{margin-top:13px;font-size:9px;padding:5px 8px}
.electronics-source-link{display:block;text-decoration:none;color:#8ed2e4;font-size:9px;margin-top:10px}
.electronics-source-link:hover{text-decoration:underline;text-underline-offset:3px}
.electronics-source-path{font:8px var(--mono,monospace);line-height:1.7;color:#7291a0;word-break:break-word;margin:9px 0 0}
.electronics-source-hash{font:7px var(--mono,monospace);line-height:1.7;color:#577d92;margin:6px 0 0;overflow-wrap:anywhere}
.electronics-source-credit{font-size:8px;color:#6e8fa0;line-height:1.7;margin:8px 0 0}
.electronics-warnings{font-size:8px;color:#ad9a7b;margin-top:14px;border-top:1px solid #2d3c3d;padding-top:12px}
.electronics-warnings summary{cursor:pointer;color:#bcab8d;line-height:1.8}
.electronics-warnings p{font-size:8px;line-height:1.8;color:#8d8f83;margin:10px 0 0}
.electronics-footer{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:15px 0 18px}
.electronics-counts{display:flex;gap:19px;flex-shrink:0}
.electronics-counts>span{display:flex;align-items:baseline;gap:5px}
.electronics-counts strong{font:14px var(--mono,monospace);color:#acd6e3}
.electronics-counts>span>span{font-size:8px;color:#678b9e;white-space:nowrap}
.electronics-evidence-note{margin:0;max-width:440px;font-size:8px;line-height:1.8;color:#527a8f}
.electronics-empty{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:45px;z-index:2}
.electronics-empty h3{font-size:20px;line-height:1.6;color:#c7dfe8;font-weight:400;margin:12px 0}
.electronics-empty p{font-size:11px;line-height:1.9;color:#6f95aa;max-width:400px;margin:0}
.electronics-system-block>rect{fill:#0a2533;stroke:#3b5c6e;stroke-width:1}
.electronics-block-title{font-size:10px;font-weight:500;fill:#cce3ec}
.electronics-block-id{font:7px var(--mono,monospace);fill:#638e9f}
.electronics-pin-label{font:8px var(--mono,monospace);fill:#a9c5d2}
.electronics-port{fill:#0a2330;stroke:#80b9c8;stroke-width:1.2}
.electronics-proposed-line{stroke:#9fbcc1;opacity:.65;transition:opacity .12s;pointer-events:none}
.electronics-system-edge{cursor:pointer}
.electronics-system-edge.is-dim{opacity:.16}
.electronics-system-edge.is-selected .electronics-proposed-line{stroke:#edbc7d;opacity:1;stroke-width:2.3}
.electronics-connection-list{display:flex;flex-direction:column;gap:5px;margin-top:12px}
.electronics-connection-list .electronics-button{text-align:left;font-size:8px;line-height:1.7;padding:7px 8px}
.electronics-connection-list .electronics-button[aria-pressed=true]{background:#31291e;border-color:#6c583c;color:#e2b981}
.electronics-endpoint{border-top:1px solid #2a414c;padding:12px 0 3px}
.electronics-endpoint-label{display:block;font-size:8px;color:#6b95aa;margin-bottom:7px}
.electronics-endpoint>strong{display:block;font-size:10px;line-height:1.8;color:#b7d0dc;font-weight:500;margin-bottom:12px}
.electronics-locate{margin-bottom:12px;font-size:9px;padding:5px 8px}
@media(min-width:1500px){.electronics-root{padding:29px 34px 0}.electronics-body{grid-template-columns:minmax(0,1fr) 270px}.electronics-side{max-height:760px}.electronics-stage{min-height:500px}.electronics-selection,.electronics-source{padding:20px}.electronics-selectors{padding:20px}}
@media(max-width:1120px){.electronics-root{padding:20px 18px 0}.electronics-toolbar{align-items:stretch}.electronics-board-picker{max-width:100%}.electronics-body{grid-template-columns:minmax(0,1fr) 215px}.electronics-layer-controls{align-items:center}.electronics-layer-controls .electronics-button{font-size:8px;padding:5px 6px}.electronics-layer-controls .electronics-button:before{margin-right:4px}.electronics-footer{align-items:flex-start;flex-direction:column;gap:11px}.electronics-evidence-note{max-width:none}.electronics-counts{gap:16px}.electronics-stage-help{max-width:170px;line-height:1.7}}
@media(max-width:850px){.electronics-heading{align-items:flex-start}.electronics-heading h2{font-size:18px}.electronics-source-status{font-size:8px;padding:5px 7px}.electronics-body{grid-template-columns:1fr}.electronics-stage{min-height:400px}.electronics-side{border-left:0;border-top:1px solid #284454;display:grid;grid-template-columns:1fr 1fr;max-height:none}.electronics-selectors{grid-column:1/-1;flex-direction:row;gap:12px}.electronics-selectors label{flex:1;min-width:0}.electronics-selection{border-right:1px solid #213b49;border-bottom:0}.electronics-source{min-width:0}.electronics-board-dimensions{font-size:7px}.electronics-stage-help{max-width:none}.electronics-board-picker{min-width:100%;max-width:100%}}
@media(max-width:480px){.electronics-root{padding:17px 12px 0}.electronics-heading{gap:9px}.electronics-heading h2{font-size:16px}.electronics-eyebrow{font-size:7px}.electronics-source-status{max-width:120px;white-space:normal}.electronics-stage{min-height:340px}.electronics-side{display:block}.electronics-selectors{display:flex}.electronics-selection{border-right:0;border-bottom:1px solid #213b49}.electronics-board-dimensions{right:12px;bottom:66px}.electronics-stage-help{display:none}.electronics-counts{gap:12px;flex-wrap:wrap}.electronics-counts strong{font-size:12px}.electronics-empty{padding:25px}.electronics-empty h3{font-size:17px}.electronics-board-canvas{inset:35px 8px 50px;width:calc(100% - 16px);height:calc(100% - 85px)}}
@media(prefers-reduced-motion:reduce){.electronics-inspector *{transition:none!important}}
/* Desktop workbench fills the viewport; details scroll independently of the PCB. */
@media(min-width:851px){
  .electronics-root{height:100%;min-height:0;padding:14px 20px 0}
  .electronics-heading{min-height:28px;flex-shrink:0}
  .electronics-heading .electronics-eyebrow{display:none}
  .electronics-heading h2{font-size:16px;margin:0}
  .electronics-source-status{padding:4px 8px;font-size:8px}
  .electronics-tabs{margin-top:6px;flex-shrink:0}
  .electronics-tabs .electronics-button{padding:6px 0 8px;font-size:10px}
  .electronics-subline{margin:6px 0 8px;font-size:8px;flex-shrink:0}
  .electronics-toolbar{margin-bottom:9px;gap:10px;flex-shrink:0}
  .electronics-board-picker{gap:4px}
  .electronics-board-picker select{height:29px}
  .electronics-body{min-height:210px;grid-template-columns:minmax(0,1fr) 215px}
  .electronics-stage{min-height:0}
  .electronics-side{min-height:0;max-height:100%;overflow:auto}
  .electronics-selectors{padding:12px;gap:8px}
  .electronics-selection,.electronics-source{padding:13px 12px}
  .electronics-selection h3{font-size:12px}
  .electronics-footer{padding:9px 0 11px;gap:12px;flex-shrink:0;flex-direction:row;align-items:center}
  .electronics-counts{gap:10px}.electronics-counts strong{font-size:11px}
  .electronics-evidence-note{font-size:7px;max-width:400px}
}
.simulation-timeline{list-style:none;padding:12px 16px;margin:12px 0;border-left:1px solid #276170;background:rgba(16,39,51,.4);max-height:240px;overflow:auto}
.simulation-timeline li{display:grid;grid-template-columns:64px minmax(0,1fr) auto;gap:12px;padding:5px 0;font-size:12px;line-height:1.5}
.simulation-timeline time{color:#67e3ee;font-variant-numeric:tabular-nums}.simulation-timeline small{color:#7497aa}

/* Live PCM workbench: actual runtime values, no decorative signal animation. */
.live-radio { margin:22px 0 34px; padding:26px; border:1px solid #39746e; border-radius:20px; background:radial-gradient(ellipse at 90% 0, #15393899,transparent 60%),#0a191f; box-shadow:0 18px 50px #0003; }
.live-radio[hidden] {display:none;}
.live-header {display:flex;justify-content:space-between;align-items:center;gap:16px;}
.live-header h3 {font-size:27px;margin:9px 0 13px;font-weight:500;letter-spacing:-.7px;}
.live-badge {border:1px solid #376263;color:#a3c6c6;border-radius:24px;padding:8px 13px;font-size:12px;white-space:nowrap;}
.live-badge[data-state="playing"] {background:#184c41;color:#a8ffe6;border-color:#348a6d;}
.live-badge[data-state="retrying"] {color:#ffc58c;border-color:#a47842;}
.live-body {display:grid;grid-template-columns:240px 1fr;gap:34px;margin:26px 0 20px;}
.live-controls {display:grid;align-content:start;gap:20px;}
.live-controls label {font-size:12px;letter-spacing:.5px;color:#9aafba;display:grid;gap:10px;}
.live-controls select {font:inherit;color:#dbeeed;background:#122a30;border:1px solid #38555e;border-radius:9px;padding:12px;width:100%;}
.live-controls input[type=range] {width:100%;accent-color:#8ce6cd;cursor:pointer;}
.live-controls output {color:#d9eee9;font-variant-numeric:tabular-nums;}
.live-controls button {padding:10px 13px;border-radius:9px;cursor:pointer;}
.live-controls button:disabled {opacity:.4;cursor:default;}
.live-controls small,.live-sound-state {font-size:11px;color:#86a4ae;line-height:1.6;}
.live-actions,.live-faults {display:flex;flex-wrap:wrap;gap:7px;}
.live-faults button {font-size:11px;border-color:#425658;background:#15282c;}
.live-controls button[aria-pressed=true] {border-color:#7cddc7;color:#a7f4de;}
.live-visual {min-width:0;align-self:center;}
.live-visual canvas {width:100%;height:160px;display:block;margin:20px 0 10px;}
.live-pipeline {display:flex;gap:0;align-items:center;justify-content:space-between;color:#8fd3cb;font-size:11px;}
.live-pipeline span+span::before {content:'→';color:#457778;margin-right:14px;}
.live-meters {display:flex;gap:22px;padding-top:15px;border-top:1px solid #244049;}
.live-meters div {display:grid;gap:8px;}
.live-meters small {font-size:10px;color:#7897a5;}
.live-meters strong {font-size:17px;color:#d6eee9;font-weight:400;font-variant-numeric:tabular-nums;}
.live-message {color:#b9d8d3;font-size:12px;line-height:1.7;}
.live-log {list-style:none;padding:0;margin:15px 0;display:grid;gap:8px;}
.live-log li {display:flex;gap:13px;font-size:11px;color:#91b0bb;}.live-log time {min-width:45px;color:#6f909a;font-variant-numeric:tabular-nums;}
.live-radio details {color:#748f9b;font-size:11px;border-top:1px solid #243a43;padding-top:15px;line-height:1.7;}
.live-radio details summary {cursor:pointer;color:#99b5be;}
@media(max-width:1100px){.live-body{grid-template-columns:1fr;gap:24px}.live-controls{grid-template-columns:1fr 1fr;gap:16px}.live-controls small{grid-column:1/-1}.live-header h3{font-size:22px}}
.live-controls button {font:inherit;font-size:12px;color:#c9e4df;background:#153039;border:1px solid #35585f;}
.live-controls button.primary {background:#9ce9db;color:#092a2b;border-color:#9ce9db;}
.live-controls button:hover:not(:disabled) {border-color:#9ce9db;}
.live-controls button:focus-visible,.live-controls select:focus-visible,.live-controls input:focus-visible {outline:2px solid #9ce9db;outline-offset:3px;}
.live-actions,.live-faults {align-items:center;align-content:center;}
@media(max-width:1100px){.live-radio{padding:22px}.live-body{margin-top:20px}.live-visual canvas{height:115px}.live-log{gap:6px}.live-header h3{margin-bottom:8px}}

/* Parts and sources (web/sourcing.js) */
.electronics-parts{position:absolute;inset:0;overflow:auto;padding:14px;display:grid;gap:6px;align-content:start}
.electronics-part{padding:9px 12px;border:1px solid var(--line);border-radius:8px;background:var(--panel)}
.electronics-part-head{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:6px 14px}
.electronics-part-head strong{font-size:12.5px;color:var(--text);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.electronics-part-source{font:12px/1.4 var(--mono);color:var(--muted)}
.electronics-part.is-estimated{border-style:dashed}
.electronics-part.is-estimated .electronics-part-source{color:var(--warn)}
.electronics-part.is-jlc_smt .electronics-part-source{color:var(--ok)}
.electronics-part-note{margin:6px 0 0;font-size:12px;line-height:1.45;color:var(--faint)}
.electronics-part .electronics-locate{margin:0;padding:3px 8px}
@media(max-width:750px){.electronics-part-head{grid-template-columns:1fr auto}.electronics-part-source{grid-column:1/-1;grid-row:2}}
