@font-face{font-family:Scout Mono;src:local(Cascadia Mono),local(Consolas)}:root{--ink:#181713;--ink-2:#28251e;--ink-3:#373227;--paper:#f4efe0;--paper-2:#e5dcc8;--paper-3:#c9bfa8;--field:#fffaf0;--green:#2f6f56;--green-bright:#56c08a;--amber:#efb944;--red:#d65a44;--line:#f4efe02e;--shadow:0 22px 70px #00000059;color:var(--paper);background:var(--ink);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;font-family:Aptos,Segoe UI,system-ui,sans-serif}*{box-sizing:border-box}html,body,#root{width:100%;min-width:320px;min-height:100%;margin:0}body{background:linear-gradient(#f4efe00a 1px, transparent 1px), linear-gradient(90deg, #f4efe00a 1px, transparent 1px), radial-gradient(circle at 8% 12%, #56c08a29, transparent 28%), radial-gradient(circle at 95% 30%, #efb94429, transparent 32%), var(--ink);background-size:28px 28px,28px 28px,auto,auto,auto;min-height:100vh}button,input,select,textarea{font:inherit}button,select,input,textarea{border:1px solid #18171329}button{background:var(--paper);min-height:36px;color:var(--ink);cursor:pointer;letter-spacing:0;border-radius:7px;padding:8px 12px;font-weight:760;transition:transform .15s,background .15s,border-color .15s}button:hover:not(:disabled){background:#fff8e8;transform:translateY(-1px)}button:disabled{cursor:not-allowed;opacity:.45}select,input[type=text],input[type=number],textarea{background:var(--field);width:100%;min-height:38px;color:var(--ink);border-radius:7px;padding:8px 10px}textarea{resize:vertical;min-height:92px;line-height:1.45}input[type=range]{width:100%;accent-color:var(--green)}input[type=checkbox]{width:18px;height:18px;accent-color:var(--green)}input[type=color]{background:var(--field);border-radius:7px;width:48px;min-width:48px;height:38px;padding:2px}.app-shell{min-height:100vh;padding:18px}.masthead{justify-content:space-between;align-items:center;gap:16px;max-width:1680px;margin:0 auto 16px;display:flex}.masthead h1{color:var(--paper);letter-spacing:0;margin:0;font-size:clamp(32px,4.8vw,64px);line-height:.94}.eyebrow{color:var(--amber);text-transform:uppercase;letter-spacing:.12em;margin:0 0 8px;font-family:Scout Mono,monospace;font-size:12px}.masthead-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.version-pill{color:var(--paper);background:#56c08a1a;border:1px solid #56c08a6b;border-radius:999px;align-items:center;gap:8px;padding:8px 12px;font-family:Scout Mono,monospace;font-size:12px;font-weight:760;display:inline-flex}.version-pill span{color:var(--green-bright);text-transform:uppercase;letter-spacing:.08em;font-size:10px}.status-pill{border:1px solid var(--line);min-width:104px;color:var(--paper);text-transform:uppercase;background:#f4efe014;border-radius:999px;justify-content:center;align-items:center;gap:9px;padding:8px 12px;font-family:Scout Mono,monospace;font-size:12px;display:inline-flex}.status-pill span{background:var(--amber);width:9px;height:9px;box-shadow:0 0 14px var(--amber);border-radius:50%}.status-ready span{background:var(--green-bright);box-shadow:0 0 14px var(--green-bright)}.status-error span{background:var(--red);box-shadow:0 0 14px var(--red)}.guide-toggle{color:var(--paper);text-transform:uppercase;background:#efb9441f;border-color:#efb9446b;border-radius:999px;font-family:Scout Mono,monospace;font-size:12px}.guide-toggle.is-active{background:var(--amber);color:var(--ink)}.workspace{grid-template-columns:minmax(520px,1fr) minmax(400px,520px);align-items:start;gap:18px;max-width:1720px;min-height:calc(100vh - 132px);margin:0 auto;display:grid}.workspace.is-simple .advanced-panel{display:none}.stage-column,.control-column{align-content:start;min-width:0;display:grid}.stage-column{gap:16px;position:sticky;top:14px}.control-column{gap:12px}.scout-frame{contain:layout paint;width:100%;height:min(760px,100vh - 132px);min-height:420px;transform:translateY(var(--stage-scroll-offset,0px));will-change:transform;box-shadow:var(--shadow);background:linear-gradient(120deg,#2f6f5638,#0000 45%),linear-gradient(#f4efe012 1px,#0000 1px) 0 0/34px 34px,linear-gradient(90deg,#f4efe012 1px,#0000 1px) 0 0/34px 34px,#201e18;border:1px solid #f4efe033;border-radius:8px;align-self:start;transition:transform .16s ease-out;position:relative;overflow:hidden}.rive-canvas{min-height:0;display:block;position:absolute;inset:0;width:100%!important;height:100%!important}.rive-canvas canvas{display:block;width:100%!important;height:100%!important}.stage-overlay{pointer-events:none;flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex;position:absolute;bottom:12px;right:12px}.stage-overlay span{color:var(--paper);text-transform:uppercase;background:#181713b8;border:1px solid #f4efe033;border-radius:999px;padding:6px 9px;font-family:Scout Mono,monospace;font-size:11px}.panel{border:1px solid var(--line);background:#f4efe01a;border-radius:8px;min-width:0;padding:14px;box-shadow:inset 0 1px #ffffff0d}.panel-heading{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.panel-heading h2{color:var(--paper);letter-spacing:0;margin:0;font-size:16px;line-height:1.15}.panel-heading p{color:var(--paper-3);margin:4px 0 0;font-size:12px;line-height:1.35}.guided-panel{background:linear-gradient(120deg,#56c08a1a,#0000 54%),#f4efe01a;border-color:#56c08a52}.guided-progress{background:#18171347;border:1px solid #f4efe021;border-radius:7px;justify-items:end;gap:4px;min-width:76px;padding:7px 9px;display:grid}.guided-progress span,.guided-card-kicker span,.guided-card-kicker em,.guided-expected span,.guided-steps em{text-transform:uppercase;font-family:Scout Mono,monospace;font-size:10px;line-height:1.2}.guided-progress span,.guided-card-kicker span,.guided-expected span{color:var(--paper-3)}.guided-progress strong{color:var(--paper);font-size:18px;line-height:1}.guided-shell{grid-template-columns:minmax(220px,.46fr) minmax(280px,1fr);gap:12px;display:grid}.guided-steps{gap:7px;display:grid}.guided-steps button{min-height:48px;color:var(--paper);text-align:left;background:#18171357;border-color:#f4efe024;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:8px;display:grid}.guided-steps button span{width:28px;height:28px;color:var(--paper);background:#f4efe01a;border-radius:999px;justify-content:center;align-items:center;font-family:Scout Mono,monospace;font-size:12px;display:inline-flex}.guided-steps button strong{overflow-wrap:anywhere;min-width:0;font-size:13px;line-height:1.15}.guided-steps button em,.guided-card-kicker em{color:var(--paper-2);border:1px solid #f4efe029;border-radius:999px;padding:4px 7px;font-style:normal}.guided-steps button.is-active{background:#efb94429;border-color:#efb94475}.guided-steps .status-pass em,.guided-card.status-pass .guided-card-kicker em{color:var(--green-bright);border-color:#56c08a75}.guided-steps .status-warn em,.guided-card.status-warn .guided-card-kicker em{color:var(--amber);border-color:#efb94475}.guided-card{background:#18171342;border:1px solid #f4efe024;border-radius:8px;align-content:start;gap:10px;min-height:100%;padding:13px;display:grid}.guided-card-kicker{justify-content:space-between;align-items:center;gap:10px;display:flex}.guided-card h3{color:var(--paper);margin:0;font-size:20px;line-height:1.1}.guided-card>strong{color:var(--green-bright);font-size:13px;line-height:1.25}.guided-card.status-warn>strong{color:var(--amber)}.guided-card p{color:var(--paper-2);margin:0;font-size:13px;line-height:1.45}.guided-expected{background:#f4efe00f;border:1px solid #f4efe01f;border-radius:7px;gap:4px;padding:9px;display:grid}.guided-actions{grid-template-columns:minmax(74px,.7fr) minmax(140px,1fr) minmax(74px,.7fr);gap:8px;margin-top:2px;display:grid}.guided-actions .primary-action{background:var(--green-bright);color:var(--ink)}.test-bench-panel{background:linear-gradient(120deg,#56c08a1f,#0000 54%),#f4efe01a;border-color:#56c08a57}.test-bench-status{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:12px;display:grid}.test-bench-status div{background:#1817134d;border:1px solid #f4efe021;border-radius:7px;min-width:0;padding:9px}.test-bench-status span,.test-area-heading span,.test-state-grid em,.animation-library button,.probe-strip button{font-family:Scout Mono,monospace}.test-bench-status span{color:var(--paper-3);text-transform:uppercase;font-size:10px;line-height:1.3;display:block}.test-bench-status strong{min-width:0;color:var(--paper);overflow-wrap:anywhere;margin-top:4px;font-size:13px;line-height:1.2;display:block}.test-bench-tabs{border:1px solid var(--line);background:#1817136b;border-radius:8px;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:12px;padding:4px;display:grid}.test-bench-tabs button{color:var(--paper-2);background:0 0;border-color:#0000}.test-bench-tabs button.is-active{background:var(--amber);color:var(--ink)}.test-area{gap:12px;display:grid}.test-area-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.test-area-heading strong{color:var(--paper);font-size:15px;line-height:1.2;display:block}.test-area-heading span{color:var(--paper-3);margin-top:4px;font-size:11px;line-height:1.35;display:block}.test-state-grid{grid-template-columns:repeat(3,minmax(132px,1fr));gap:8px;display:grid}.test-state-grid button{background:var(--ink-3);min-height:68px;color:var(--paper);text-align:left;border-color:#f4efe033;justify-items:start;gap:5px;display:grid}.test-state-grid button.is-active{background:var(--green-bright);color:var(--ink)}.test-state-grid span{font-size:15px;line-height:1.1}.test-state-grid em{color:inherit;opacity:.72;font-size:10px;font-style:normal}.animation-test-tools{grid-template-columns:minmax(220px,1fr) auto;align-items:end;gap:12px;display:grid}.animation-test-tools .field{margin:0}.probe-strip{flex-wrap:wrap;gap:7px;display:flex}.probe-strip button{background:var(--ink-3);min-height:34px;color:var(--paper);border-color:#f4efe02e;font-size:11px}.probe-strip button.is-active{background:var(--amber);color:var(--ink)}.animation-library{grid-template-columns:repeat(4,minmax(112px,1fr));gap:7px;max-height:240px;padding-right:2px;display:grid;overflow:auto}.animation-library button{min-width:0;min-height:38px;color:var(--paper-2);overflow-wrap:anywhere;background:#1817134d;border-color:#f4efe021;padding:7px 8px;font-size:11px;font-weight:650}.animation-library button.is-active{background:var(--green-bright);color:var(--ink);border-color:#f4efe059}.field{gap:6px;margin:0 0 12px;display:grid}.field span,.control-label span,.check-row em{color:var(--paper-3);font-family:Scout Mono,monospace;font-size:11px;font-style:normal;line-height:1.35}.segmented,.button-row,.intent-grid{flex-wrap:wrap;gap:8px;display:flex}.segmented{border:1px solid var(--line);background:#18171373;border-radius:8px;margin-bottom:12px;padding:4px}.segmented button{color:var(--paper-2);background:0 0;border-color:#0000;flex:96px}.segmented button.is-active{background:var(--amber);color:var(--ink)}.button-row button,.intent-grid button{flex:auto}.mode-note{color:var(--paper-3);background:#18171347;border:1px solid #f4efe01f;border-radius:7px;gap:4px;margin:-2px 0 12px;padding:8px 10px;font-family:Scout Mono,monospace;font-size:11px;line-height:1.35;display:grid}.mode-note strong{color:var(--green-bright)}.diagnostics-panel{background:linear-gradient(135deg,#56c08a1a,#0000 48%),#f4efe01a;border-color:#56c08a52}.diagnostics-grid{gap:7px;display:grid}.diagnostic-row{background:#18171347;border:1px solid #f4efe01f;border-radius:7px;grid-template-columns:minmax(118px,.7fr) minmax(0,1fr);align-items:baseline;gap:10px;padding:8px 9px;display:grid}.diagnostic-row span{color:var(--paper-3);text-transform:uppercase;font-family:Scout Mono,monospace;font-size:10px;line-height:1.35}.diagnostic-row strong{min-width:0;color:var(--paper);overflow-wrap:anywhere;font-family:Scout Mono,monospace;font-size:11px;line-height:1.35}.qa-panel{background:linear-gradient(145deg,#efb94417,#0000 46%),#f4efe01a;border-color:#efb94457}.contract-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-bottom:10px;display:grid}.contract-summary div{background:#18171352;border:1px solid #f4efe021;border-radius:7px;min-width:0;padding:8px}.contract-summary span,.qa-section-heading span,.contract-row span,.contract-row em,.probe-grid em,.control-map span,.inventory-title span,.chip-cloud span,.machine-inventory span{font-family:Scout Mono,monospace}.contract-summary span,.control-map span{color:var(--paper-3);text-transform:uppercase;font-size:10px;line-height:1.35;display:block}.contract-summary strong{color:var(--paper);margin-top:4px;font-size:20px;line-height:1;display:block}.contract-list,.inventory-list,.control-map{gap:7px;display:grid}.contract-row{background:#1817134d;border:1px solid #f4efe01f;border-radius:7px;grid-template-columns:minmax(0,1fr) auto;gap:7px 10px;padding:9px;display:grid;position:relative}.contract-row:before{content:"";background:var(--paper-3);border-radius:999px;width:3px;height:calc(100% - 24px);position:absolute;top:12px;left:-1px}.contract-row div{min-width:0}.contract-row span{color:var(--paper-3);text-transform:uppercase;font-size:10px;line-height:1.35;display:block}.contract-row strong{min-width:0;color:var(--paper);overflow-wrap:anywhere;margin-top:3px;font-size:13px;line-height:1.2;display:block}.contract-row p{color:var(--paper-3);grid-column:1/-1;margin:0;font-size:12px;line-height:1.35}.contract-row em{color:var(--paper-2);text-transform:uppercase;border:1px solid #f4efe029;border-radius:999px;grid-area:1/2;place-self:start end;padding:4px 7px;font-size:10px;font-style:normal;line-height:1}.contract-pass:before,.contract-pass em{color:var(--green-bright);border-color:#56c08a6b}.contract-pass:before{background:var(--green-bright)}.contract-warn:before,.contract-warn em{color:var(--amber);border-color:#efb9446b}.contract-warn:before{background:var(--amber)}.qa-section{gap:8px;margin-top:12px;display:grid}.qa-section-heading{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.qa-section-heading strong{color:var(--paper);font-size:13px}.qa-section-heading span{color:var(--paper-3);font-size:10px;line-height:1.35}.probe-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.probe-grid button{background:var(--ink-3);min-height:52px;color:var(--paper);text-align:left;border-color:#f4efe02e;justify-items:start;gap:3px;display:grid}.probe-grid button.is-active{background:var(--amber);color:var(--ink);border-color:#f4efe059}.probe-grid em{min-width:0;max-width:100%;color:inherit;opacity:.72;overflow-wrap:anywhere;font-size:10px;font-style:normal}.control-map div{background:#18171342;border:1px solid #f4efe01f;border-radius:7px;min-width:0;padding:8px 9px}.control-map strong{min-width:0;color:var(--paper);overflow-wrap:anywhere;margin-top:3px;font-size:12px;line-height:1.3;display:block}.inventory{margin-top:12px}.inventory summary{cursor:pointer;color:var(--paper);font-size:13px;font-weight:760}.inventory-list{max-height:340px;margin-top:8px;padding-right:2px;overflow:auto}.inventory-card{background:#1817133d;border:1px solid #f4efe01f;border-radius:7px;gap:8px;padding:9px;display:grid}.inventory-title{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.inventory-title strong{color:var(--paper);font-size:13px}.inventory-title span{color:var(--paper-3);font-size:10px}.chip-cloud{flex-wrap:wrap;gap:5px;display:flex}.chip-cloud span{max-width:100%;color:var(--paper-3);overflow-wrap:anywhere;background:#f4efe00f;border:1px solid #f4efe01f;border-radius:999px;padding:4px 7px;font-size:10px;line-height:1.15}.chip-cloud span.is-active{color:var(--paper);background:#efb9442e;border-color:#efb94473}.machine-inventory{gap:6px;display:grid}.machine-inventory div{border-top:1px solid #f4efe01a;gap:2px;padding-top:7px;display:grid}.machine-inventory strong{color:var(--paper);font-size:12px}.machine-inventory span{color:var(--paper-3);font-size:10px;line-height:1.35}.repeat-toggle{width:fit-content;color:var(--paper);align-items:center;gap:8px;margin:-2px 0 12px;font-family:Scout Mono,monospace;font-size:12px;display:inline-flex}.readout-strip{grid-template-columns:repeat(4,minmax(104px,1fr));gap:8px;margin-bottom:12px;display:grid}.readout-cell{background:#18171357;border:1px solid #f4efe024;border-radius:7px;gap:4px;min-height:62px;padding:10px;display:grid}.readout-cell span,.deck-label{color:var(--paper-3);text-transform:uppercase;font-family:Scout Mono,monospace;font-size:11px;line-height:1.35}.readout-cell strong{overflow-wrap:anywhere;min-width:0;color:var(--paper);font-size:13px;line-height:1.2}.readout-wide{grid-column:1/-1;min-height:52px}.deck-section{gap:8px;margin-top:12px;display:grid}.state-button-grid{grid-template-columns:repeat(auto-fit,minmax(112px,1fr));gap:8px;display:grid}.state-button-grid button{background:var(--ink-3);color:var(--paper);border-color:#f4efe033}.state-button-grid button.is-active{background:var(--green-bright);color:var(--ink);border-color:#f4efe059}.direct-control-grid{grid-template-columns:repeat(3,minmax(150px,1fr));gap:10px;margin-top:12px;display:grid}.direct-field{margin:0}.cue-row{grid-template-columns:minmax(260px,1fr) minmax(220px,.72fr);gap:12px;display:grid}.intent-grid{align-content:start}.intent-grid button{background:var(--ink-3);color:var(--paper);border-color:#f4efe033}.machine-list,.control-list{gap:8px;display:grid}.check-row{background:#18171340;border:1px solid #f4efe01f;border-radius:7px;grid-template-columns:auto 1fr auto;align-items:center;gap:9px;min-height:40px;padding:9px;display:grid}.check-row span{color:var(--paper);font-weight:720}.control-row{background:#1817133d;border:1px solid #f4efe01f;border-radius:7px;grid-template-columns:minmax(0,1fr) minmax(112px,.7fr);align-items:center;gap:10px;min-height:56px;padding:10px;display:grid}.control-label{gap:3px;min-width:0;display:grid}.control-label strong{overflow-wrap:anywhere;color:var(--paper);font-size:13px;line-height:1.25}.control-label span{overflow-wrap:anywhere}.number-control{grid-template-columns:minmax(90px,1fr) 82px;align-items:center;gap:8px;display:grid}.toggle{color:var(--paper);justify-content:flex-end;align-items:center;gap:8px;font-family:Scout Mono,monospace;font-size:12px;display:inline-flex}.vm-row{grid-template-columns:minmax(0,1fr) minmax(110px,.8fr)}output{overflow-wrap:anywhere;min-height:36px;color:var(--paper-2);justify-content:flex-end;align-items:center;font-family:Scout Mono,monospace;font-size:12px;display:inline-flex}.event-panel{grid-template-rows:auto minmax(0,1fr);min-height:180px;display:grid;overflow:hidden}.log-list{align-content:start;gap:7px;min-height:0;max-height:none;padding-right:2px;display:grid;overflow:auto}.log-entry{color:var(--paper-2);background:#18171352;border-radius:7px;grid-template-columns:84px 128px minmax(0,1fr);align-items:baseline;gap:10px;padding:8px 9px;display:grid}.log-entry time,.log-entry span{color:var(--paper-3);overflow-wrap:anywhere;font-family:Scout Mono,monospace;font-size:11px}.log-entry strong{color:var(--amber);font-size:12px}.empty-state{color:var(--paper-3);margin:0;font-size:13px;line-height:1.45}@media (width<=1080px){.workspace{grid-template-columns:1fr}.stage-column,.control-column{align-content:start;gap:16px;min-width:0;display:grid}.stage-column{position:relative;top:auto}.scout-frame{height:clamp(340px,56vh,560px);position:relative;transform:none}.control-column{max-height:none;overflow:visible}.stage-column{grid-template-rows:max-content max-content max-content max-content}}@media (width<=700px){.app-shell{padding:12px}.masthead{flex-direction:column;align-items:flex-start}.scout-frame{height:clamp(340px,56vh,520px)}.cue-row,.guided-shell,.control-row,.vm-row,.log-entry,.readout-strip,.state-button-grid,.direct-control-grid,.contract-summary,.probe-grid,.test-bench-status,.test-state-grid,.animation-test-tools,.animation-library,.number-control,.guided-actions{grid-template-columns:1fr}.toggle,output{justify-content:flex-start}}
