:root{color-scheme:light;--app-bg: #f5f7fb;--surface: #ffffff;--surface-alt: #fbfcfe;--surface-muted: #f4f6f9;--surface-subtle: #f8fafc;--text: #1f2430;--text-heading: #2d3445;--text-control: #232a38;--text-body: #394354;--text-muted: #5f687a;--text-subtle: #687085;--text-soft: #475166;--border: #d6ddeb;--border-strong: #d8deea;--border-control: #cfd7e6;--border-soft: #e1e6ef;--border-softer: #dfe5ef;--brand: #0b83d8;--brand-strong: #0565a8;--brand-deep: #0a5d95;--brand-soft: #e8f4ff;--brand-hover: #f3f9ff;--success: #22a35a;--success-border: #86d3a9;--danger: #d92d3a;--danger-strong: #b42330;--danger-border: #ef9ca3;--warning: #9a6700;--skipped: #7b8497;--pending: #9aa3b5;--connector: #cbd4e3;--skipped-border: #c8cfdd;--purple: #6e56cf;--purple-strong: #4e3ba7;--purple-soft: #f6f3ff;--authority-tstc: #b7791f;--authority-deployment: #365f91;--authority-runtime: #5b5fc7;--pill-bg: #eef2f8;--code-bg: #eef4fb;--panel-info-bg: #f3f9ff;--panel-info-border: #cfe2f3;--on-color: #ffffff;--header-overlay: rgba(255, 255, 255, .92);--sticky-overlay: rgba(255, 255, 255, .96);--node-chip-bg: rgba(255, 255, 255, .68);--node-divider: rgba(31, 36, 48, .08);--grid-line: rgba(11, 131, 216, .08);--inset-highlight: rgba(255, 255, 255, .65);--shadow-panel: 0 1px 3px rgba(20, 31, 54, .08);--shadow-control: 0 -8px 28px rgba(20, 31, 54, .16);--shadow-sticky: 0 8px 24px rgba(20, 31, 54, .13);--shadow-node: 0 5px 18px rgba(31, 36, 48, .08);--shadow-node-active: 0 0 0 3px rgba(11, 131, 216, .16), 0 5px 18px rgba(31, 36, 48, .08);--shadow-status: 0 2px 8px rgba(31, 36, 48, .2);--shadow-dot: 0 1px 5px rgba(31, 36, 48, .18);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--app-bg);color:var(--text);font-synthesis:none;text-rendering:optimizeLegibility}:root[data-theme=dark]{color-scheme:dark;--app-bg: #0e1219;--surface: #151b25;--surface-alt: #19212e;--surface-muted: #202938;--surface-subtle: #1d2634;--text: #e8edf5;--text-heading: #f4f7fb;--text-control: #e6edf6;--text-body: #d4dbea;--text-muted: #aeb8c8;--text-subtle: #9faabc;--text-soft: #c3ccda;--border: #313b4c;--border-strong: #394456;--border-control: #465368;--border-soft: #2a3444;--border-softer: #354154;--brand: #4db3ff;--brand-strong: #9bd4ff;--brand-deep: #8ccdff;--brand-soft: #14344d;--brand-hover: #1b3e59;--success: #55d58a;--success-border: #3f8f62;--danger: #ff6b78;--danger-strong: #ff9aa4;--danger-border: #9b4b56;--warning: #f1b84b;--skipped: #a4afc0;--pending: #788397;--connector: #4a5668;--skipped-border: #4a5566;--purple: #a796ff;--purple-strong: #c9c0ff;--purple-soft: #251f43;--authority-tstc: #f1b84b;--authority-deployment: #8bb7f0;--authority-runtime: #a5b4fc;--pill-bg: #263143;--code-bg: #102c40;--panel-info-bg: #132a3c;--panel-info-border: #244862;--on-color: #071018;--header-overlay: rgba(21, 27, 37, .92);--sticky-overlay: rgba(21, 27, 37, .96);--node-chip-bg: rgba(25, 33, 46, .82);--node-divider: rgba(232, 237, 245, .1);--grid-line: rgba(77, 179, 255, .12);--inset-highlight: rgba(255, 255, 255, .04);--shadow-panel: 0 1px 3px rgba(0, 0, 0, .35);--shadow-control: 0 -8px 28px rgba(0, 0, 0, .36);--shadow-sticky: 0 8px 24px rgba(0, 0, 0, .3);--shadow-node: 0 5px 18px rgba(0, 0, 0, .28);--shadow-node-active: 0 0 0 3px rgba(77, 179, 255, .2), 0 5px 18px rgba(0, 0, 0, .28);--shadow-status: 0 2px 8px rgba(0, 0, 0, .36);--shadow-dot: 0 1px 5px rgba(0, 0, 0, .34)}*{box-sizing:border-box}body{margin:0;min-width:320px;background:var(--app-bg)}button,select,input{font:inherit}button,select{border:1px solid var(--border-control);border-radius:6px;color:var(--text-control);background:var(--surface)}button{min-height:36px;padding:7px 10px;display:inline-flex;align-items:center;justify-content:center;gap:7px;cursor:pointer}button:hover:not(:disabled),select:hover{border-color:var(--brand);background:var(--brand-hover)}button:disabled{cursor:not-allowed;opacity:.45}select{height:36px;min-width:190px;padding:0 30px 0 10px}code{color:var(--brand-deep);overflow-wrap:anywhere;font-size:.88em}.app-shell{min-height:100vh;padding:14px 14px 96px;display:grid;grid-auto-rows:max-content;align-content:start;gap:10px}.loading-shell{place-items:center}.loading-panel{width:min(460px,100%);border:1px solid var(--border);border-radius:8px;padding:28px;background:var(--surface)}.app-header,.control-deck,.run-summary-panel,.summary-custody-strip,.theatre-workspace,.flowchart-canvas,.bottom-inspector{width:min(1920px,100%);margin:0 auto}.app-header{min-height:72px;border:1px solid var(--border-strong);border-radius:8px;padding:10px 12px;display:grid;grid-template-columns:minmax(260px,1fr) auto auto;gap:14px;align-items:center;background:var(--surface);box-shadow:var(--shadow-panel)}.brand-block{display:flex;align-items:center;gap:12px;min-width:0}.brand-mark{width:42px;height:42px;border-radius:8px;display:grid;place-items:center;background:var(--brand);color:var(--on-color);font-weight:900}.brand-block h1,.run-summary-panel h2,.stage-inspector h2,.canvas-header h2{margin:0;letter-spacing:0}.brand-block h1{font-size:1.18rem;line-height:1.15}.brand-block p{margin:4px 0 0;color:var(--text-muted);font-size:.84rem}.transport-group,.scrubber-group,.scenario-picker,.speed-picker{display:grid;gap:5px}.theme-switch{min-height:36px;border:1px solid var(--border-control);border-radius:8px;padding:3px;display:flex;gap:3px;background:var(--surface-alt)}.theme-switch button{min-height:28px;min-width:78px;border-color:transparent;background:transparent;color:var(--text-muted)}.theme-switch button.active{border-color:var(--brand);background:var(--brand-soft);color:var(--brand-strong);font-weight:900}.transport-group>span,.scrubber-group>span,.scenario-picker span,.speed-picker span,.field-label,.ref-list>span,.eyebrow{color:var(--text-subtle);font-size:.72rem;font-weight:900;letter-spacing:0;text-transform:uppercase}.scrubber-group>span{visibility:hidden}.boundary-card{min-width:185px;border-left:3px solid var(--purple);padding:8px 10px;display:grid;gap:2px;background:var(--purple-soft)}.boundary-card span{color:var(--text-muted);font-size:.78rem}.boundary-card strong{color:var(--purple-strong);font-size:.9rem}.control-deck{position:fixed;right:14px;bottom:14px;left:14px;z-index:20;width:auto;max-width:1920px;margin:0 auto;border:1px solid var(--border-strong);border-radius:8px;padding:9px;display:grid;grid-template-columns:minmax(360px,max-content) minmax(280px,1fr) 220px 150px;gap:12px;align-items:center;background:var(--surface);box-shadow:var(--shadow-control)}.control-deck .scenario-picker select,.control-deck .speed-picker select{width:100%;min-width:0}.transport{display:flex;flex-wrap:wrap;gap:7px}.primary-control{min-width:92px;border-color:var(--brand);background:var(--brand-soft);color:var(--brand-strong);font-weight:800}.scrubber-row{display:grid;grid-template-columns:28px minmax(0,1fr) 28px;gap:8px;align-items:center;color:var(--text-subtle);font-size:.78rem;font-weight:900}.scrubber-row input{width:100%;accent-color:var(--brand)}.theatre-workspace{display:grid;grid-template-columns:minmax(0,7fr) minmax(340px,3fr);gap:10px;align-items:start}.flowchart-canvas{width:100%;border:1px solid var(--border);border-radius:8px;display:grid;grid-template-rows:auto minmax(0,1fr);background:linear-gradient(90deg,var(--grid-line) 1px,transparent 1px),linear-gradient(var(--grid-line) 1px,transparent 1px),var(--surface);background-size:18px 18px;overflow:hidden;box-shadow:inset 0 0 0 1px var(--inset-highlight)}.canvas-header{min-height:62px;padding:12px 16px;display:flex;justify-content:space-between;gap:16px;border-bottom:1px solid var(--border-strong);background:var(--header-overlay)}.canvas-header h2{color:var(--text-heading);font-size:1rem;line-height:1.25}.canvas-header>span{align-self:start;border-radius:999px;padding:5px 10px;color:var(--brand-strong);background:var(--brand-soft);font-weight:900}.flowchart-scroll{min-width:0;overflow:visible;display:grid;align-items:start;padding:28px 42px;scroll-behavior:smooth}.flow-row{width:min(640px,100%);margin:0 auto;display:flex;flex-direction:column;align-items:stretch}.flow-item{display:flex;flex-direction:column;align-items:center}.flow-node{--run-duration: 1.9s;position:relative;width:100%;min-height:156px;border:1px solid var(--border);border-radius:9px;padding:12px 13px 13px;overflow:hidden;display:grid;justify-items:center;align-content:start;gap:5px;text-align:center;background:var(--surface);box-shadow:var(--shadow-node)}.flow-node:disabled{opacity:1}.node-fill{position:absolute;inset:0 auto 0 0;width:0;opacity:.14;background:currentColor}.flow-node.status-running .node-fill{animation:node-fill var(--run-duration) linear forwards}.flow-node.status-complete .node-fill,.flow-node.status-failed .node-fill{width:100%}.node-status{position:absolute;top:-10px;right:-10px;width:27px;height:27px;border:2px solid var(--surface);border-radius:999px;display:grid;place-items:center;background:currentColor;box-shadow:var(--shadow-status)}.node-status svg{color:var(--on-color)}.node-icon,.node-responsibility,.node-step-list,.node-result{position:relative;z-index:1}.node-icon{width:42px;height:42px;border:1px solid var(--border);border-radius:8px;display:grid;place-items:center;background:var(--surface-subtle)}.flow-node strong{color:var(--text-heading);font-size:.92rem;line-height:1.15}.flow-node small{color:var(--text-subtle);font-size:.72rem;font-weight:800}.node-action{min-height:28px;display:grid;place-items:center;color:var(--text-soft);font-size:.72rem;line-height:1.2}.node-responsibility{position:absolute;top:12px;left:12px;max-width:min(150px,calc(100% - 58px));border:1px solid var(--border-soft);border-radius:7px;padding:7px 9px;display:grid;gap:3px;background:var(--surface-alt);color:var(--text-subtle);font-size:.68rem;line-height:1.28;text-align:left}.node-responsibility span{color:var(--text-subtle);font-size:.6rem;font-weight:900;text-transform:uppercase}.node-step-list{width:100%;max-width:min(100%,460px);display:grid;grid-auto-flow:column;grid-auto-columns:max-content;justify-content:center;gap:7px;overflow-x:auto;overflow-y:hidden;padding-bottom:2px}.node-step{border:1px solid var(--border-softer);border-radius:999px;padding:3px 12px;color:var(--text-subtle);background:var(--node-chip-bg);font-size:.66rem;white-space:nowrap}.node-result{width:100%;border-top:1px solid var(--node-divider);padding-top:6px;color:var(--text-heading);font-size:.68rem;font-weight:800;line-height:1.2}.node-result.result-failed{color:var(--danger-strong)}.node-result.result-warning{color:var(--warning)}.flow-connector{width:2px;height:38px;background:var(--connector)}.flow-connector:after{content:"";width:8px;height:8px;border-top:2px solid currentColor;border-right:2px solid currentColor;display:block;transform:translate(-3px,28px) rotate(135deg)}.status-complete,.status-success{color:var(--success)}.status-running{color:var(--brand)}.status-failed{color:var(--danger)}.status-warning{color:var(--warning)}.status-skipped{color:var(--skipped)}.status-info{color:var(--brand)}.status-eligible{color:var(--success)}.status-ineligible{color:var(--danger)}.status-pending{color:var(--pending)}.flow-node.status-complete{border-color:var(--success-border)}.flow-node.status-running{border-color:var(--brand);box-shadow:var(--shadow-node-active)}.flow-node.status-failed{border-color:var(--danger-border)}.flow-node.status-skipped{border-color:var(--skipped-border);background:var(--surface-muted);box-shadow:none}.flow-node.status-pending{background:var(--surface-alt)}.flow-connector.status-complete{background:var(--success)}.flow-connector.status-running{background:linear-gradient(180deg,var(--brand) 50%,var(--connector) 50%)}.flow-connector.status-failed{background:repeating-linear-gradient(180deg,var(--danger) 0 8px,transparent 8px 14px)}.flow-connector.status-skipped{background:repeating-linear-gradient(180deg,var(--pending) 0 7px,transparent 7px 13px)}@keyframes node-fill{0%{width:0}to{width:100%}}.run-summary-panel,.stage-inspector{border:1px solid var(--border);border-radius:8px;padding:12px;background:var(--surface);box-shadow:var(--shadow-panel)}.run-summary-panel{display:grid;grid-template-columns:minmax(280px,1.1fr) minmax(240px,.9fr) minmax(520px,1.8fr);gap:12px;align-items:center}.run-summary-panel h2,.stage-inspector h2{font-size:1.18rem}.run-summary-panel p{margin:7px 0 0;color:var(--text-muted);line-height:1.42}.stop-banner{margin-top:0;border:1px solid var(--panel-info-border);border-radius:7px;padding:8px;display:flex;gap:8px;color:var(--text-body);background:var(--panel-info-bg);line-height:1.35}.summary-metrics{margin:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.summary-metrics div{border:1px solid var(--border-soft);border-radius:7px;padding:8px;background:var(--surface-alt)}.summary-metrics dt{color:var(--text-subtle);font-size:.7rem;font-weight:900;text-transform:uppercase}.summary-metrics dd{margin:5px 0 0;display:flex;align-items:center;gap:8px;min-width:0}.copy-button{min-height:25px;padding:4px 7px;border-radius:6px;color:var(--text-soft);font-size:.72rem}.stage-inspector{position:sticky;top:82px;max-height:calc(100vh - 98px);overflow:auto;display:grid;align-content:start;gap:10px}.inspector-header{display:flex;align-items:start;justify-content:space-between;gap:12px}.authority-pill{border-radius:999px;padding:5px 9px;color:var(--on-color);font-size:.74rem;font-weight:900;white-space:nowrap}.authority-specification.authority-pill{background:var(--text-muted)}.authority-eeta.authority-pill{background:var(--brand)}.authority-tstc.authority-pill{background:var(--authority-tstc)}.authority-deployment.authority-pill{background:var(--authority-deployment)}.authority-runtime.authority-pill{background:var(--authority-runtime)}.authority-derived.authority-pill{background:var(--purple)}.trust-badge{display:flex;flex-wrap:wrap;gap:7px}.trust-badge span,.trust-badge.empty,.chip-row span{border:1px solid var(--border-softer);border-radius:999px;padding:5px 8px;background:var(--surface-alt);color:var(--text-body);font-size:.78rem}.trust-badge strong{color:var(--text)}.chip-row,.stage-nav{display:flex;flex-wrap:wrap;gap:7px}.tab-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.stage-nav button{flex:1}.tab-row button{width:100%;min-height:42px}.tab-row button.active{border-color:var(--brand);background:var(--brand-soft);color:var(--brand-strong)}.stage-story,.detail-grid{border:1px solid var(--border-soft);border-radius:7px;padding:11px;background:var(--surface-alt)}.stage-story{display:grid;gap:10px}.stage-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.stage-story strong{display:block;margin-top:5px;color:var(--text);overflow-wrap:anywhere}.stage-story p{margin:0;color:var(--text-soft);line-height:1.45}.detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.stage-inspector .detail-grid,.stage-inspector .custody-layout{grid-template-columns:1fr}.detail-grid.compact{margin-top:10px}.lineage-panel{border:1px solid var(--border-soft);border-radius:7px;padding:11px;background:var(--surface-alt)}.artifact-custody{border:1px solid var(--border-soft);border-radius:7px;padding:11px;display:grid;gap:12px;background:var(--surface-alt)}.summary-custody-strip{position:sticky;top:8px;z-index:12;align-self:start;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch;gap:8px;padding:6px;border:1px solid var(--border);border-radius:8px;background:var(--sticky-overlay);box-shadow:var(--shadow-sticky);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.summary-custody-strip div{border:1px solid var(--border-softer);border-radius:7px;min-height:62px;padding:7px 8px;display:grid;align-content:center;gap:2px;background:var(--surface)}.summary-custody-strip span,.custody-section-header span,.custody-fact-list span,.deployment-footprint>span{color:var(--text-subtle);font-size:.7rem;font-weight:900;text-transform:uppercase}.summary-custody-strip strong{color:var(--text);font-size:.9rem;overflow-wrap:anywhere}.summary-custody-strip small{color:var(--text-muted);font-size:.72rem;line-height:1.3}.custody-layout{display:grid;grid-template-columns:1fr;gap:12px}.detail-panel{border:1px solid var(--border-soft);border-radius:7px;padding:11px;background:var(--surface-alt)}.custody-section-header{display:flex;align-items:center;justify-content:space-between;gap:10px}.custody-section-header strong{color:var(--brand-deep);font-size:.8rem}.custody-event-scroll{max-height:min(410px,calc(100vh - 430px));margin-top:10px;overflow:auto;padding-right:4px;scroll-behavior:smooth}.custody-event-list{margin:0;padding:0;display:grid;gap:10px;list-style:none}.custody-event{position:relative;display:grid;grid-template-columns:34px minmax(0,1fr);gap:10px}.custody-event:not(:last-child):before{content:"";position:absolute;top:31px;bottom:-13px;left:13px;width:2px;background:var(--border-strong)}.custody-event-dot{width:28px;height:28px;border:2px solid var(--surface);border-radius:999px;display:grid;place-items:center;background:currentColor;box-shadow:var(--shadow-dot)}.custody-event-dot svg{color:var(--on-color)}.custody-event-body{min-width:0;border:1px solid var(--border-softer);border-radius:7px;padding:9px;background:var(--surface)}.custody-event-title,.custody-event-meta,.custody-ref-row{display:flex;flex-wrap:wrap;align-items:center;gap:7px}.custody-event-title strong{color:var(--text)}.custody-event-title span,.custody-event-meta span{border-radius:999px;padding:3px 7px;color:var(--text-muted);background:var(--pill-bg);font-size:.7rem;font-weight:900}.custody-event-body p{margin:6px 0;color:var(--text-muted);font-size:.78rem}.custody-ref-row{margin-top:8px;display:grid;justify-items:start;gap:8px}.custody-ref-row code{border-radius:5px;padding:3px 6px;background:var(--code-bg)}.custody-ref-actions{display:flex;flex-wrap:wrap;gap:8px}.custody-empty{margin:10px 0 0;color:var(--text-subtle)}.custody-composition{min-width:0;display:grid;align-content:start;gap:10px}.custody-fact-list{display:grid;gap:7px}.custody-fact-list div{border:1px solid var(--border-softer);border-radius:7px;padding:8px;display:grid;gap:4px;background:var(--surface)}.custody-fact-list strong{color:var(--text);font-size:.82rem;line-height:1.35;overflow-wrap:anywhere}.deployment-footprint{display:grid;gap:7px}.deployment-footprint p{margin:0;color:var(--text-subtle)}.deployment-row{border:1px solid var(--border-softer);border-left:3px solid currentColor;border-radius:7px;padding:8px;display:grid;gap:3px;background:var(--surface)}.deployment-row strong{color:var(--text)}.deployment-row span{width:fit-content;border-radius:999px;padding:3px 7px;color:currentColor;background:var(--surface-muted);font-size:.72rem;font-weight:900}.deployment-row small{color:var(--text-muted)}.chain-list{margin:0;padding:0;display:grid;gap:0;list-style:none}.chain-event{position:relative;display:grid;grid-template-columns:34px minmax(0,1fr);gap:10px;color:var(--text-body)}.chain-event:not(:last-child):before{content:"";position:absolute;top:30px;bottom:-10px;left:13px;width:2px;background:var(--border-strong)}.chain-dot{width:28px;height:28px;border:2px solid var(--surface);border-radius:999px;display:grid;place-items:center;background:currentColor;box-shadow:var(--shadow-dot)}.chain-dot svg{color:var(--on-color)}.chain-event>div{min-width:0;padding-bottom:10px}.chain-title-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.chain-title-row strong{color:var(--text)}.chain-title-row span{border-radius:999px;padding:3px 7px;color:var(--text-muted);background:var(--pill-bg);font-size:.72rem;font-weight:900}.chain-event time{display:block;margin-top:4px;color:var(--text-subtle);font-size:.74rem}.chain-refs{margin-top:7px;display:flex;flex-wrap:wrap;gap:7px}.chain-refs code{border-radius:5px;padding:3px 5px;background:var(--code-bg)}.chain-empty{color:var(--text-subtle)}.ref-list{min-width:0}.ref-list ul{margin:8px 0 0;padding:0;display:grid;gap:7px;list-style:none}.ref-list li{min-width:0;display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--text-body)}.ref-actions{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}.ref-list p{margin:8px 0 0;color:var(--text-subtle)}@media(max-width:1180px){.app-shell{padding-bottom:228px}.app-header,.control-deck,.run-summary-panel,.theatre-workspace,.custody-layout{grid-template-columns:1fr}.flowchart-scroll{padding:30px}.stage-inspector{position:static;max-height:none}.summary-metrics,.summary-custody-strip{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.app-shell{padding:9px 9px 304px}.control-deck{right:9px;bottom:9px;left:9px}.transport{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.transport button,.scenario-picker select,.speed-picker select,.theme-switch{width:100%}.theme-switch button{flex:1}.detail-grid,.summary-metrics,.stage-facts,.summary-custody-strip,.node-step-list{grid-template-columns:1fr}}
