.pcb-workbench-dialog { width:min(100% - 28px,1120px); max-height:calc(100dvh - 28px); padding:20px; }
.pcb-workbench-head { display:flex; justify-content:space-between; align-items:center; gap:12px; }
.pcb-workbench-head h2 { margin:0; }
.pcb-workbench-body { display:grid; gap:14px; }
.pcb-workbench-controls { display:flex; flex-wrap:wrap; gap:12px; }
.pcb-workbench-controls label { display:grid; gap:4px; color:var(--muted); font-size:11px; }
.pcb-workbench-controls select { min-width:190px; }
.pcb-empty { padding:22px; border:1px dashed #bfd0c7; border-radius:9px; background:#f7faf8; line-height:1.5; }
.pcb-evidence { display:grid; gap:3px; padding:10px 12px; border:1px solid var(--line); border-radius:8px; font-size:12px; }
.pcb-evidence-passed { color:#185b3f; background:#eef8f1; border-color:#b9dfc6; }
.pcb-evidence-failed { color:#8b2e27; background:#fff1ef; border-color:#e6bdb8; }
.pcb-evidence-unverified { color:#66552c; background:#fff9e8; border-color:#ead9a2; }
.pcb-evidence span { font-size:11px; }
.pcb-check-details { border:1px solid var(--line); border-radius:8px; background:#fbfcfb; }
.pcb-check-details summary { cursor:pointer; padding:10px 12px; font-size:13px; font-weight:600; }
.pcb-check-details-content { display:grid; gap:10px; padding:0 12px 12px; }
.pcb-check-details-content > label { display:grid; gap:4px; font-size:12px; color:var(--muted); }
.pcb-check-report { display:grid; gap:10px; }
.pcb-check-section { border-top:1px solid var(--line); padding-top:10px; }
.pcb-check-section h4,.pcb-check-section > summary { padding:0 0 7px; font-size:12px; }
.pcb-check-section h5 { margin:0 0 5px; font-size:12px; }
.pcb-check-section > summary { padding:0 0 7px; font-size:12px; }
.pcb-check-section h5 { color:var(--muted); margin-top:8px; }
.pcb-check-list { max-height:300px; overflow:auto; margin:0 0 8px; padding-left:20px; display:grid; gap:3px; font-size:12px; overflow-wrap:anywhere; }
.pcb-check-key-values { display:grid; grid-template-columns:minmax(110px,auto) 1fr; gap:3px 10px; margin:0; font-size:12px; }
.pcb-check-key-values dt { color:var(--muted); }.pcb-check-key-values dd { margin:0; overflow-wrap:anywhere; }
.pcb-historical-note,.pcb-check-load-error { margin:0; color:#7a4b1c; font-size:11px; }
.pcb-preview { display:grid; gap:8px; min-width:0; }
.pcb-preview-tabs,.pcb-preview-controls,.pcb-download-links { display:flex; flex-wrap:wrap; align-items:center; gap:7px; }
.pcb-preview-tabs .selected { color:#fff; background:var(--green-dark); border-color:#0e4435; }
.pcb-preview-stage { position:relative; width:100%; height:min(65dvh,650px); min-height:320px; max-height:65dvh; overflow:hidden; display:grid; place-items:center; border:1px solid var(--line); border-radius:9px; background:#edf3ef; cursor:grab; touch-action:none; }
.pcb-preview-stage:active { cursor:grabbing; }
.pcb-preview-stage:focus-visible { outline:3px solid #518a73; outline-offset:2px; }
.pcb-preview-image { position:absolute; inset:0; width:90%; height:90%; margin:auto; object-fit:contain; transform-origin:center; user-select:none; pointer-events:none; }
.pcb-downloads { border-top:1px solid var(--line); padding-top:12px; }
.pcb-downloads h3 { margin:0; font-size:14px; }
.pcb-source-unavailable,.pcb-preview-error { color:#7a4b1c; font-size:11px; }
.pcb-schematic-layout { display:grid; grid-template-columns:minmax(0,1fr) 280px; gap:16px; align-items:start; }
.pcb-review-panel { display:grid; gap:10px; min-width:0; max-height:calc(65dvh + 50px); overflow:auto; padding:4px 8px 12px 0; }
.pcb-review-panel h3,.pcb-review-panel h4,.pcb-review-panel p { margin:0; }
.pcb-review-panel label { display:grid; gap:5px; font-size:12px; }
.pcb-review-panel textarea,.pcb-review-panel select { width:100%; min-width:0; box-sizing:border-box; }
.pcb-review-panel [aria-pressed="true"] { background:var(--green-dark); color:white; border-color:var(--green-dark); box-shadow:inset 0 2px 4px #0004; }
.pcb-note-target { display:grid; gap:5px; border:1px solid var(--line); border-radius:7px; padding:10px; font-size:12px; }
.pcb-note-actions { display:flex; gap:8px; flex-wrap:wrap; }
.pcb-note-list { display:grid; gap:8px; }
.pcb-note { padding:10px; border:1px solid var(--line); border-radius:7px; display:grid; gap:6px; }
.pcb-note.selected { border-color:var(--green); background:#eef8f1; }
.pcb-note-body { white-space:pre-wrap; overflow-wrap:anywhere; font-size:12px; }
.pcb-note-overlay { position:absolute; inset:0; pointer-events:none; overflow:hidden; }
.pcb-note-marker { position:absolute; transform:translate(-50%,-50%); width:26px; height:26px; border-radius:50%; border:2px solid white; background:#1b6653; color:white; box-shadow:0 1px 5px #0007; padding:0; display:grid; place-items:center; font:600 12px system-ui; }
button.pcb-note-marker { pointer-events:auto; cursor:pointer; }
.pcb-note-marker.selected,.pcb-note-marker.draft { background:#b14b10; }
.pcb-note-marker.symbol { background:transparent; color:#b14b10; border:2px solid #b14b10; box-shadow:none; }
.pcb-preview-stage.pcb-marking { cursor:crosshair; }
@media (max-width:850px) { .pcb-schematic-layout { grid-template-columns:minmax(0,1fr); }.pcb-review-panel { max-height:none; padding-right:0; } }
