/* Light, engineering-style operator surface. No external assets. */
:root{font:15px/1.45 system-ui,-apple-system,sans-serif;color:#2a3036;background:#f4f5f3;--surface:#fff;--line:#d3d9dd;--muted:#61717b;--accent:#345c79;--warn:#8b5616;--radius:3px}
*{box-sizing:border-box}body{margin:0 auto;max-width:1280px;padding:22px 28px 40px}h1,h2,h3,p{margin:0 0 12px}h1{font-size:25px;letter-spacing:-.6px}h2{font-size:17px}h3{font-size:14px}a{color:var(--accent);text-underline-offset:3px}button,input,select,textarea{font:inherit;max-width:100%}button{border:1px solid #aab8c2;border-radius:var(--radius);background:#f8fafb;color:#243f53;padding:10px 14px;cursor:pointer;min-height:42px}button:hover:not(:disabled){background:#edf3f7;border-color:var(--accent)}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #527a98;outline-offset:3px}button:disabled{opacity:.55;cursor:not-allowed}button.primary{background:var(--accent);border-color:var(--accent);color:white}button.stop,#stop{background:#fff4f2;border-color:#b85a4b;color:#8c2f26;font-weight:650}input,select,textarea{border:1px solid #b9c5cc;border-radius:var(--radius);background:#fff;padding:9px;width:100%}textarea{min-height:85px;resize:vertical}label{display:block;margin:0 0 14px;font-size:13px;color:#465966}label select,label input,label textarea{display:block;margin-top:5px;color:#2a3036}pre{font:12px/1.6 ui-monospace,monospace;white-space:pre-wrap;overflow-wrap:anywhere;margin:12px 0}small,.muted{color:var(--muted);font-size:12px}.eyebrow{font:11px/1.5 ui-monospace,monospace;letter-spacing:1px;text-transform:uppercase;color:var(--muted);margin-bottom:5px}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:20px}.page-head h1{margin-bottom:3px}.page-head p{margin:0;color:var(--muted);font-size:13px}nav{display:flex;align-items:center;gap:6px;flex-wrap:wrap}nav a{padding:8px 11px;text-decoration:none;font-size:13px;border:1px solid transparent}nav a[aria-current=page]{background:white;border-color:var(--line);color:#253f51;font-weight:650}nav a:hover{background:#e9eef0}.badge{display:inline-flex;padding:4px 8px;border:1px solid var(--line);font:11px/1.4 ui-monospace,monospace;background:#f8fafb;color:var(--muted)}.badge[data-state=live]{color:#246347;background:#eff7f2;border-color:#b3d0bc}.notice{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:10px 14px;border:1px solid var(--line);background:#fafbf9;font-size:12px;margin-bottom:16px}.warning{border-left:3px solid #b0783a;background:#fff8ed;padding:10px 12px;font-size:12px}.warning p:last-child{margin-bottom:0}section,.panel,details.panel{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:20px;margin:0 0 18px;min-width:0;overflow-wrap:anywhere}.section-head{display:flex;justify-content:space-between;gap:16px;align-items:baseline;margin-bottom:14px}.section-head h2{margin:0}.signal-path{display:grid;grid-template-columns:1fr 24px 1.1fr 24px 1fr;align-items:stretch;gap:10px}.path-arrow{align-self:center;text-align:center;color:#91a0aa;font-size:23px}.signal-node{padding:16px;border:1px solid var(--line);background:#fbfcfc;border-radius:var(--radius);min-width:0}.signal-node .bit{font:600 42px/1.15 ui-monospace,monospace;display:block;margin:9px 0}.signal-node[data-level="1"]{border-color:#7192a8;background:#f1f6fa}.signal-node[data-level="0"]{background:#f5f7f7}.signal-node[data-level=unknown]{border-style:dashed}.signal-node .bit[data-unknown=true]{font-size:24px;color:var(--muted)}.device-node{text-align:center;background:#fff}.device-icon{width:64px;height:48px;margin:7px auto 10px;border:2px solid #99a8b1;position:relative;border-radius:3px}.device-icon:before{content:'';position:absolute;left:19px;right:19px;top:-10px;height:28px;background:#e6ebee;border:2px solid #99a8b1}.device-icon:after{content:'?';position:absolute;bottom:5px;right:8px;width:15px;height:15px;border:1px dashed #8999a5;border-radius:50%;font:11px/15px ui-monospace,monospace;color:var(--muted)}.status-strip{margin-top:14px;padding:12px 14px;background:#f4f7f8;border-left:3px solid #879dab}.status-strip[data-state=attention]{background:#fff7e9;border-color:#b7833e}.status-strip[data-state=unknown]{background:#f4f4f1;border-color:#9a9a90}#signal-summary{font-weight:650;font-size:16px;display:block;margin-bottom:3px}#signal-detail{font-size:12px;color:#556670;display:block}.telemetry-meta{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:12px;font:11px/1.6 ui-monospace,monospace;color:var(--muted)}.workspace{display:grid;grid-template-columns:minmax(300px,.85fr) minmax(0,1.4fr);gap:18px;align-items:start}.workspace section{margin-bottom:0}.button-row{display:flex;gap:8px;flex-wrap:wrap}.button-row button{flex:1}.reason{font-size:12px;color:var(--muted);margin:7px 0 12px}.reason:empty,#error:empty,#errors:empty{display:none}#error,#errors{border:1px solid #cb9f97;background:#fff3f0;color:#842e25;padding:12px;white-space:pre-wrap;margin-bottom:16px}#preparation{padding-bottom:16px;margin-bottom:18px;border-bottom:1px solid var(--line)}#preparation .primary{width:100%}.session-line{font-size:12px;color:var(--muted);margin-bottom:14px}.current-step{margin:12px 0;padding:16px;border:1px solid #c2d1db;border-left:3px solid var(--accent);background:#f7fafc}#current-title{font-size:21px;margin-bottom:8px}#stage{font-size:14px;margin:0;line-height:1.6}.expectations{display:flex;gap:18px;flex-wrap:wrap;margin-top:14px;border-top:1px solid var(--line);padding-top:12px;font-size:12px;color:var(--muted)}.expectations strong{font:600 14px ui-monospace,monospace;color:#334d60}.next-action{font-size:13px;border-left:3px solid #9db5c6;padding:9px 12px;background:#f3f7f9;margin:0 0 14px}.nav-actions{display:flex;justify-content:space-between;gap:8px;margin:12px 0 16px}.nav-actions button{padding:7px 12px}.guide-panel{margin-top:18px}.flow{list-style:none;margin:0;padding:0 0 0 20px;display:grid;grid-template-columns:1fr 1fr;gap:8px;position:relative}.flow li{min-width:0}.flow button,.flow .endpoint{width:100%;text-align:left;padding:11px 13px;border:1px solid var(--line);background:#fbfcfc;display:block;font-size:13px}.flow .endpoint{font-size:12px;color:var(--muted)}.flow li:first-child,.flow li:nth-last-child(1){grid-column:1/-1}.flow .prompt{display:none}.flow .status{display:block;margin-top:5px;font-size:11px;color:var(--muted)}.flow button[aria-current=step]{border:2px solid var(--accent);background:#edf5fb}.flow button[data-preview=true]{outline:2px dashed #b0783a;outline-offset:-4px}.flow button[data-evidence=observed]{border-left:4px solid #397758}.flow button[data-evidence=differs]{border-left:4px solid #b36a32}.flow button[data-evidence=indeterminate]{border-left:4px solid #9c913a}.branch{position:absolute;left:0;top:0;width:20px;height:100%;pointer-events:none}.branch path{stroke:#a17642;stroke-width:1.5;stroke-dasharray:4 4;fill:none}.recovery-link{display:flex;align-items:center;gap:14px;margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}.recovery-link p{font-size:12px;color:var(--muted);margin:0}.recovery-link button{flex-shrink:0}summary{cursor:pointer;font-weight:600;font-size:13px;color:#3a5567}details.panel[open]>summary{margin-bottom:18px}details p{font-size:12px;color:#546671}.scroll{overflow:auto;max-height:260px}table{width:100%;border-collapse:collapse;font:11px/1.5 ui-monospace,monospace}th,td{text-align:left;border-bottom:1px solid #e2e6e9;padding:6px;white-space:nowrap}.save-row{display:flex;gap:10px;align-items:center}.save-row select{flex:1}.save-row button{flex-shrink:0}.stat-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;margin:14px 0}.stat{border:1px solid var(--line);padding:14px;background:#fafcfc;font-size:12px}.stat strong{display:block;font-size:18px;margin-top:5px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}#event-summary{font-size:12px;max-height:180px;overflow:auto}#events{max-height:260px;overflow:auto}#checks{max-height:260px;overflow:auto}#verdict{font-size:13px;color:#536773}#observed-cycles{font-size:17px;font-weight:600}.compact-note{font-size:12px;color:var(--muted);margin-bottom:8px}[hidden]{display:none!important}
body{padding:18px 24px 36px}.page-head{margin-bottom:16px}section,.panel,details.panel{padding:16px}.signal-node{padding:12px}.signal-node .bit{font-size:36px;margin:5px 0}.device-icon{height:42px;margin:5px auto 8px}.status-strip{padding:10px 12px;margin-top:10px}.telemetry-meta{margin-top:8px}.notice{padding:8px 12px}.section-head{margin-bottom:12px}.workspace .section-head{align-items:center}.workspace .section-head #stop{font-size:12px;padding:8px 10px}#monitor-status,#monitor-owner{font-size:12px;color:var(--muted);margin:8px 0}
.flow button[aria-current=step] .prompt,.flow button[data-preview=true] .prompt{display:block;font-size:12px;line-height:1.6;margin-top:8px}
.recipe-nav{gap:8px}.recipe-nav a{border-color:var(--line);border-radius:var(--radius);background:#eef1f2}.recipe-nav a[aria-current=page]{border-color:var(--accent);background:#e8f0f5}.mode-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}.mode-card{padding:14px;border:1px solid var(--line);border-radius:var(--radius);background:#f8fafb}.mode-card[data-current=true]{border-color:var(--accent);background:#e8f0f5}.mode-card p{margin-bottom:8px}.mode-card .badge{white-space:normal}
@media(max-width:900px){body{padding:16px}.page-head{flex-direction:column;gap:12px}.workspace{grid-template-columns:1fr}.flow{grid-template-columns:1fr 1fr}.stat-grid{grid-template-columns:1fr 1fr 1fr}}
@media(max-width:540px){.mode-grid{grid-template-columns:1fr}.recipe-nav{width:100%}.recipe-nav a{flex:1;min-width:0}}
@media(max-width:540px){body{padding:12px}section,.panel,details.panel{padding:15px}.page-head{margin-bottom:14px}h1{font-size:23px}nav{gap:0}nav a{padding:7px 9px}.signal-path{grid-template-columns:1fr 18px 1fr;gap:5px}.signal-path .device-node{grid-column:1/-1;grid-row:2;margin-top:6px;padding:10px;display:flex;align-items:center;justify-content:center;gap:16px}.signal-path .device-node .device-icon{margin:4px 0;width:54px;height:40px;flex-shrink:0}.signal-path .return-arrow{display:none}.signal-node{padding:12px}.signal-node .bit{font-size:36px}.signal-node .bit[data-unknown=true]{font-size:18px}.flow{grid-template-columns:1fr;padding-left:18px}.flow button{padding:12px}.recovery-link{flex-direction:column;align-items:stretch}.save-row{flex-direction:column;align-items:stretch}.form-grid,.stat-grid{grid-template-columns:1fr}.stat-grid{gap:6px}.stat{padding:10px}.stat strong{font-size:16px}.button-row button{min-width:120px}.section-head{gap:8px;flex-wrap:wrap}.telemetry-meta{font-size:10px}}
