.xterm{cursor:text;position:relative;-moz-user-select:none;user-select:none;-ms-user-select:none;-webkit-user-select:none}.xterm.focus,.xterm:focus{outline:none}.xterm .xterm-helpers{position:absolute;top:0;z-index:5}.xterm .xterm-helper-textarea{padding:0;border:0;margin:0;position:absolute;opacity:0;left:-9999em;top:0;width:0;height:0;z-index:-5;white-space:nowrap;overflow:hidden;resize:none}.xterm .composition-view{background:#000;color:#FFF;display:none;position:absolute;white-space:nowrap;z-index:1}.xterm .composition-view.active{display:block}.xterm .xterm-viewport{background-color:#000;overflow-y:scroll;cursor:default;position:absolute;right:0;left:0;top:0;bottom:0}.xterm .xterm-screen{position:relative}.xterm .xterm-screen canvas{position:absolute;left:0;top:0}.xterm-char-measure-element{display:inline-block;visibility:hidden;position:absolute;top:0;left:-9999em;line-height:normal}.xterm.enable-mouse-events{cursor:default}.xterm .xterm-cursor-pointer,.xterm.xterm-cursor-pointer{cursor:pointer}.xterm.column-select.focus{cursor:crosshair}.xterm .xterm-accessibility:not(.debug),.xterm .xterm-message{position:absolute;left:0;top:0;bottom:0;right:0;z-index:10;color:transparent;pointer-events:none}.xterm .xterm-accessibility-tree:not(.debug) ::selection{color:transparent}.xterm .xterm-accessibility-tree{font-family:monospace;-webkit-user-select:text;-moz-user-select:text;user-select:text;white-space:pre}.xterm .xterm-accessibility-tree>div{transform-origin:left;width:-moz-fit-content;width:fit-content}.xterm .live-region{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.xterm-dim{opacity:1!important}.xterm-underline-1{text-decoration:underline}.xterm-underline-2{-webkit-text-decoration:double underline;text-decoration:double underline}.xterm-underline-3{-webkit-text-decoration:wavy underline;text-decoration:wavy underline}.xterm-underline-4{-webkit-text-decoration:dotted underline;text-decoration:dotted underline}.xterm-underline-5{-webkit-text-decoration:dashed underline;text-decoration:dashed underline}.xterm-overline{text-decoration:overline}.xterm-overline.xterm-underline-1{text-decoration:overline underline}.xterm-overline.xterm-underline-2{-webkit-text-decoration:overline double underline;text-decoration:overline double underline}.xterm-overline.xterm-underline-3{-webkit-text-decoration:overline wavy underline;text-decoration:overline wavy underline}.xterm-overline.xterm-underline-4{-webkit-text-decoration:overline dotted underline;text-decoration:overline dotted underline}.xterm-overline.xterm-underline-5{-webkit-text-decoration:overline dashed underline;text-decoration:overline dashed underline}.xterm-strikethrough{text-decoration:line-through}.xterm-screen .xterm-decoration-container .xterm-decoration{z-index:6;position:absolute}.xterm-screen .xterm-decoration-container .xterm-decoration.xterm-decoration-top-layer{z-index:7}.xterm-decoration-overview-ruler{z-index:8;position:absolute;top:0;right:0;pointer-events:none}.xterm-decoration-top{z-index:2;position:relative}.xterm .xterm-scrollable-element>.scrollbar{cursor:default}.xterm .xterm-scrollable-element>.scrollbar>.scra{cursor:pointer;font-size:11px!important}.xterm .xterm-scrollable-element>.visible{opacity:1;background:rgba(0,0,0,0);transition:opacity .1s linear;z-index:11}.xterm .xterm-scrollable-element>.invisible{opacity:0;pointer-events:none}.xterm .xterm-scrollable-element>.invisible.fade{transition:opacity .8s linear}.xterm .xterm-scrollable-element>.shadow{position:absolute;display:none}.xterm .xterm-scrollable-element>.shadow.top{display:block;top:0;left:3px;height:3px;width:100%;box-shadow:var(--vscode-scrollbar-shadow,#000) 0 6px 6px -6px inset}.xterm .xterm-scrollable-element>.shadow.left{display:block;top:3px;left:0;height:100%;width:3px;box-shadow:var(--vscode-scrollbar-shadow,#000) 6px 0 6px -6px inset}.xterm .xterm-scrollable-element>.shadow.top-left-corner{display:block;top:0;left:0;height:3px;width:3px}.xterm .xterm-scrollable-element>.shadow.top.left{box-shadow:var(--vscode-scrollbar-shadow,#000) 6px 0 6px -6px inset}:root{--rust:#8B5A2B;--rust-light:#A0622D;--rust-pale:#C4834A;--patina:#4A6741;--patina-light:#5C7C52;--signal-green:#6B9962;--concrete:#F4F1EC;--concrete-dark:#E8E4DC;--concrete-mid:#D4CEBF;--charcoal:#1C1C1E;--charcoal-mid:#2C2C2E;--wire:#3A3A3C;--muted:#8A8A8E;--muted-light:#AEAEB2;--sky:#7FB2CC;--surface:#FFFFFF;--code-bg:#1C1C1E;--code-text:#F4F1EC;--code-key:#AEAEB2;--code-string:#C4834A;--code-number:#7FB2CC;--code-bool:#5C7C52;--code-null:#8A8A8E;--font-display:"Instrument Serif",serif;--font-mono:"IBM Plex Mono",monospace;--font-body:"Space Grotesk",sans-serif;--ease-standard:cubic-bezier(0.25,0.46,0.45,0.94);--ease-enter:cubic-bezier(0.0,0.0,0.2,1.0);--ease-exit:cubic-bezier(0.4,0.0,1.0,1.0);--duration-pulse:2.4s;--duration-blink:3s;--duration-reveal:500ms;--delay-stagger:120ms;--border-width:1.5px;--sidebar-width:200px;--header-height:48px}[data-theme=dark]{--rust:#C4834A;--rust-light:#D4975C;--rust-pale:#E0A86A;--patina:#6B9962;--patina-light:#7DAF72;--signal-green:#8BB882;--concrete:#1A1A1C;--concrete-dark:#252527;--concrete-mid:#3A3A3C;--charcoal:#E8E4DC;--charcoal-mid:#C4C0B8;--wire:#4A4A4C;--muted:#8A8A8E;--muted-light:#6A6A6E;--sky:#8FC2DC;--surface:#222224;--code-bg:#111113}[data-theme=dark] .station-sidebar{--charcoal:#1C1C1E;--charcoal-mid:#2C2C2E;--wire:#3A3A3C;--concrete:#F4F1EC;--concrete-dark:#E8E4DC;--muted:#8A8A8E;--muted-light:#AEAEB2;--rust:#8B5A2B}[data-theme=dark] .status-badge--running{background:rgba(107,153,98,.2)}[data-theme=dark] .status-badge--completed{background:rgba(74,103,65,.18)}[data-theme=dark] .status-badge--failed{background:rgba(196,131,74,.15)}@keyframes signal-pulse{0%{box-shadow:0 0 0 0 rgba(107,153,98,.4)}70%{box-shadow:0 0 0 6px rgba(107,153,98,0)}to{box-shadow:0 0 0 0 rgba(107,153,98,0)}}@keyframes status-blink{0%,45%,55%,to{opacity:1}50%{opacity:.15}}@keyframes stagger-reveal{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes load-sweep{0%{width:0}15%{width:15%}40%{width:45%}70%{width:70%}90%{width:90%}to{width:100%}}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-body);font-weight:300;color:var(--charcoal);background-color:var(--concrete);line-height:1.5}a{color:var(--rust);text-decoration:none}a:hover{color:var(--rust-light)}.font-display{font-family:var(--font-display);font-weight:400}.font-mono{font-family:var(--font-mono);font-size:.875rem}.font-body{font-family:var(--font-body);font-weight:300}.section-label{font-family:var(--font-mono);font-size:.65rem;text-transform:uppercase;letter-spacing:.22em;color:var(--rust);display:flex;align-items:center;gap:.5rem}.section-label:before{content:"";display:block;width:1.5rem;height:var(--border-width);background:var(--rust)}.station-layout{display:flex;min-height:100vh}.station-sidebar{width:var(--sidebar-width);background:var(--charcoal);color:var(--concrete);display:flex;flex-direction:column;position:fixed;top:0;left:0;bottom:0;z-index:10;transition:width .2s var(--ease-standard);overflow:hidden}.station-sidebar-logo{padding:1rem 1rem .75rem;border-bottom:var(--border-width) solid var(--wire)}.station-sidebar-mark{display:flex;align-items:center;gap:.5rem;color:var(--concrete)}.station-sidebar-mark svg{flex-shrink:0;opacity:.85}.station-sidebar-logo h1{font-family:var(--font-display);font-size:1.125rem;font-weight:400;color:var(--concrete);line-height:1}.station-sidebar-logo span{display:block;font-family:var(--font-mono);font-size:.5625rem;color:var(--muted);text-transform:uppercase;letter-spacing:.15em;margin-top:.375rem}.station-sidebar-nav{padding:.5rem 0;flex:1 1}.station-sidebar-nav-label{font-family:var(--font-mono);font-size:.5625rem;text-transform:uppercase;letter-spacing:.2em;color:var(--muted);padding:.5rem 1rem .25rem}.station-sidebar-nav a{display:flex;align-items:center;gap:.5rem;padding:.375rem 1rem;font-family:var(--font-mono);font-size:.8125rem;color:var(--muted-light);border-left:2px solid transparent;transition:color .2s var(--ease-standard),background .2s var(--ease-standard)}.station-sidebar-nav a svg{flex-shrink:0;opacity:.7;transition:opacity .2s var(--ease-standard)}.station-sidebar-nav a:hover{color:var(--concrete);background:var(--charcoal-mid)}.station-sidebar-nav a:hover svg{opacity:1}.station-sidebar-nav a.active{color:var(--concrete);background:var(--wire);border-left:2px solid var(--rust)}.station-sidebar-nav a.active svg{opacity:1}.sidebar-collapse-btn{display:flex;align-items:center;justify-content:center;width:100%;padding:.5rem;border:none;border-top:var(--border-width) solid var(--wire);background:transparent;color:var(--muted);cursor:pointer;transition:color .2s var(--ease-standard),background .2s var(--ease-standard)}.sidebar-collapse-btn:hover{color:var(--concrete);background:var(--charcoal-mid)}[data-collapsed=true] .station-sidebar{width:48px}[data-collapsed=true] .station-main{min-width:0;margin-left:48px}[data-collapsed=true] .nav-label,[data-collapsed=true] .station-sidebar-logo h1,[data-collapsed=true] .station-sidebar-logo>span,[data-collapsed=true] .station-sidebar-nav-label{display:none}[data-collapsed=true] .station-sidebar-logo{padding:.75rem;display:flex;justify-content:center}[data-collapsed=true] .station-sidebar-mark{justify-content:center}[data-collapsed=true] .station-sidebar-nav a{justify-content:center;padding:.5rem;border-left-color:transparent}[data-collapsed=true] .station-sidebar-nav a.active{border-left-color:transparent}.station-main{margin-left:var(--sidebar-width);flex:1 1;display:flex;flex-direction:column;transition:margin-left .2s var(--ease-standard)}.station-header{height:var(--header-height);background:var(--concrete);border-bottom:var(--border-width) solid var(--concrete-dark);justify-content:space-between;padding:0 1.5rem;position:-webkit-sticky;position:sticky;top:0;z-index:5}.breadcrumb,.station-header{display:flex;align-items:center}.breadcrumb{font-family:var(--font-mono);font-size:.75rem;color:var(--muted);gap:0}.breadcrumb-item{display:inline-flex;align-items:center}.breadcrumb-sep{margin:0 .375rem;color:var(--concrete-mid);-webkit-user-select:none;-moz-user-select:none;user-select:none}.breadcrumb-link{color:var(--muted);text-decoration:none;transition:color .15s var(--ease-standard);max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.breadcrumb-link:hover{color:var(--rust)}.breadcrumb-segment{color:var(--muted)}.breadcrumb-segment--current{color:var(--charcoal);max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.station-content{flex:1 1;padding:1.5rem;max-width:1100px}.status-badge{display:inline-flex;align-items:center;gap:.375rem;padding:.125rem .5rem;border-radius:3px;font-family:var(--font-mono);font-size:.6875rem;text-transform:uppercase;letter-spacing:.05em;line-height:1.6}.status-badge-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.status-badge--pending{background:var(--concrete-dark);color:var(--muted)}.status-badge--pending .status-badge-dot{background:var(--muted)}.status-badge--running{background:rgba(74,103,65,.12);color:var(--patina)}.status-badge--running .status-badge-dot{background:var(--signal-green);animation:status-blink var(--duration-blink) ease-in-out infinite}.status-badge--completed{background:rgba(74,103,65,.1);color:var(--patina)}.status-badge--completed .status-badge-dot{background:var(--patina)}.status-badge--failed{background:rgba(139,90,43,.1);color:var(--rust)}.status-badge--failed .status-badge-dot{background:var(--rust)}.status-badge--cancelled{background:rgba(58,58,60,.08);color:var(--muted)}.status-badge--cancelled .status-badge-dot{background:var(--wire)}.status-badge--skipped{background:transparent;color:var(--muted);border:var(--border-width) dashed var(--muted-light)}.status-badge--skipped .status-badge-dot{background:var(--muted-light)}.status-badge--stopped{background:rgba(58,58,60,.08);color:var(--muted)}.status-badge--stopped .status-badge-dot{background:var(--wire)}.status-badge--starting{background:rgba(139,90,43,.1);color:var(--rust)}.status-badge--starting .status-badge-dot{background:var(--rust-pale);animation:status-blink var(--duration-blink) ease-in-out infinite}.status-badge--stopping{background:rgba(139,90,43,.08);color:var(--rust-light)}.status-badge--stopping .status-badge-dot{background:var(--rust-pale);animation:status-blink var(--duration-blink) ease-in-out infinite}.status-badge--backoff{background:rgba(139,90,43,.08);color:var(--rust-light)}.status-badge--backoff .status-badge-dot{background:var(--rust-pale)}.status-badge--errored{background:rgba(139,90,43,.1);color:var(--rust)}.status-badge--errored .status-badge-dot{background:var(--rust)}.station-table{width:100%;border-collapse:collapse;font-family:var(--font-body);font-size:.875rem}.station-table th{font-family:var(--font-mono);font-size:.6875rem;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);text-align:left;padding:.5rem .75rem;border-bottom:var(--border-width) solid var(--concrete-dark);font-weight:400}.station-table td{padding:.625rem .75rem;border-bottom:1px solid var(--concrete-dark);vertical-align:middle}.station-table tr:hover td{background:var(--concrete-dark)}.station-table .mono{font-family:var(--font-mono);font-size:.8125rem}.station-table .truncate{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.station-card{background:var(--surface);border:var(--border-width) solid var(--concrete-dark);border-radius:4px;padding:1.25rem}.station-card h3{font-family:var(--font-display);font-size:1.125rem;margin-bottom:.75rem}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));grid-gap:.75rem;gap:.75rem;margin-bottom:1.5rem}.stat-card{background:var(--surface);border:var(--border-width) solid var(--concrete-dark);border-radius:4px;padding:1rem}.stat-card-label{font-family:var(--font-mono);font-size:.625rem;text-transform:uppercase;letter-spacing:.15em;color:var(--muted);margin-bottom:.25rem}.stat-card-value{font-family:var(--font-display);font-size:2rem;color:var(--charcoal);line-height:1.1}.pulse-dot{width:8px;height:8px;border-radius:50%;background:var(--signal-green);animation:signal-pulse var(--duration-pulse) ease-out infinite}.pulse-dot--disconnected{background:var(--muted);animation:none}.step-timeline{position:relative;padding-left:1.5rem}.step-timeline:before{content:"";position:absolute;left:5px;top:0;bottom:0;width:var(--border-width);background:var(--concrete-dark)}.step-timeline-item{position:relative;padding:.75rem 0}.step-timeline-dot{position:absolute;left:-1.5rem;top:1rem;width:10px;height:10px;border-radius:50%;border:var(--border-width) solid var(--concrete-dark);background:var(--surface);transform:translateX(-50%);left:calc(-1.5rem + 5px)}.step-timeline-dot--completed{background:var(--patina);border-color:var(--patina)}.step-timeline-dot--running{background:var(--signal-green);border-color:var(--signal-green);animation:signal-pulse var(--duration-pulse) ease-out infinite}.step-timeline-dot--failed{background:var(--rust);border-color:var(--rust)}.step-timeline-name{font-family:var(--font-mono);font-size:.8125rem;color:var(--charcoal)}.step-timeline-meta{font-family:var(--font-mono);font-size:.6875rem;color:var(--muted);margin-top:.125rem}.json-viewer{font-family:var(--font-mono);font-size:.8125rem;line-height:1.5;background:var(--code-bg);color:var(--code-text);border-radius:4px;padding:1rem;overflow-x:auto}.json-viewer .json-key{color:var(--code-key)}.json-viewer .json-string{color:var(--code-string)}.json-viewer .json-number{color:var(--code-number)}.json-viewer .json-boolean{color:var(--code-bool)}.json-viewer .json-null{color:var(--code-null)}.empty-state{text-align:center;padding:3rem 1rem;color:var(--muted)}.empty-state-text{font-family:var(--font-mono);font-size:.8125rem}.loading-bar{height:var(--border-width);background:var(--concrete-dark);position:relative;overflow:hidden;border-radius:1px}.loading-bar-fill{height:100%;background:var(--rust);animation:load-sweep 3.5s cubic-bezier(.4,0,.2,1) infinite}.dag-container{background:var(--surface);border:var(--border-width) solid var(--concrete-dark);border-radius:4px;padding:1.5rem;overflow-x:auto}.dag-node{cursor:pointer}.dag-node rect{stroke-width:1.5;rx:4;ry:4}.dag-node text{font-family:var(--font-mono);font-size:11px}.dag-edge{fill:none;stroke:var(--concrete-mid);stroke-width:1.5;transition:stroke .3s var(--ease-standard)}.dag-edge--active{stroke:var(--patina);stroke-width:2}.page-title{font-family:var(--font-display);font-size:1.75rem;font-weight:400;margin-bottom:1.5rem;color:var(--charcoal)}.btn{display:inline-flex;align-items:center;gap:.375rem;font-family:var(--font-mono);font-size:.75rem;padding:.375rem .75rem;border:var(--border-width) solid var(--charcoal);border-radius:3px;background:var(--charcoal);color:var(--concrete);cursor:pointer;transition:transform .2s var(--ease-standard),background .2s var(--ease-standard)}.btn:hover{transform:translateY(-2px);background:var(--rust);border-color:var(--rust)}.btn--primary{background:var(--patina);border-color:var(--patina)}.btn--primary:hover{background:var(--patina-light);border-color:var(--patina-light)}.btn--primary:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn--sm{font-size:.6875rem;padding:.25rem .5rem}.btn--danger{background:var(--rust);border-color:var(--rust)}.btn--danger:hover{background:var(--rust-light);border-color:var(--rust-light)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.detail-grid{display:grid;grid-template-columns:auto 1fr;grid-gap:.25rem 1rem;gap:.25rem 1rem;font-size:.875rem}.detail-label{font-family:var(--font-mono);font-size:.75rem;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.detail-value{font-family:var(--font-body);color:var(--charcoal)}.detail-value.mono{font-family:var(--font-mono);font-size:.8125rem}.reveal-item{animation:stagger-reveal var(--duration-reveal) var(--ease-standard) both}.input-textarea{width:100%;margin-top:.5rem;padding:.75rem;font-family:var(--font-mono);font-size:.8125rem;line-height:1.5;color:var(--code-text);background:var(--code-bg);border:var(--border-width) solid var(--wire);border-radius:4px;resize:vertical;outline:none}.input-textarea:focus{border-color:var(--patina)}.input-text{width:100%;padding:.4rem .55rem;font-family:var(--font-mono);font-size:.8125rem;color:var(--code-text);background:var(--code-bg);border:var(--border-width) solid var(--wire);border-radius:4px;outline:none}.input-text:focus{border-color:var(--patina)}.log-container{background:var(--code-bg);border-radius:4px;max-height:400px;overflow-y:auto;overflow-x:auto}.log-line{display:flex;gap:.625rem;padding:.125rem .75rem;font-family:var(--font-mono);font-size:.75rem;line-height:1.6;border-bottom:1px solid var(--wire)}.log-line:last-of-type{border-bottom:none}.log-timestamp{min-width:5.5rem}.log-level,.log-timestamp{color:var(--muted);flex-shrink:0}.log-level{min-width:2rem}.log-level[data-level=stderr]{color:var(--rust-pale)}.log-message{color:var(--code-text);white-space:pre-wrap;word-break:break-all}.schema-ref{border:var(--border-width) solid var(--concrete-dark);border-radius:4px;padding:.75rem;background:var(--surface);margin-bottom:.75rem}.schema-ref-title{font-family:var(--font-mono);font-size:.625rem;text-transform:uppercase;letter-spacing:.15em;color:var(--muted);margin-bottom:.5rem}.schema-field{display:flex;justify-content:space-between;padding:.25rem 0;font-family:var(--font-mono);font-size:.8125rem;border-bottom:1px solid var(--concrete-dark)}.schema-field:last-child{border-bottom:none}.schema-field-name{color:var(--charcoal)}.schema-field-type{color:var(--muted)}.schema-field-type--optional:after{content:"?";color:var(--rust-pale)}.error-block{background:rgba(139,90,43,.08);border:var(--border-width) solid rgba(139,90,43,.2);border-radius:4px;padding:.75rem 1rem;font-size:.8125rem;color:var(--rust);white-space:pre-wrap;word-break:break-word;line-height:1.5}.copy-btn,.error-block{font-family:var(--font-mono)}.copy-btn{position:absolute;top:.5rem;right:.5rem;background:var(--wire);border:none;border-radius:3px;padding:.25rem .5rem;font-size:.625rem;color:var(--muted-light);cursor:pointer;opacity:0;transition:opacity .2s var(--ease-standard);text-transform:uppercase;letter-spacing:.1em}.copy-btn:focus,.json-viewer:hover .copy-btn{opacity:1}.copy-btn:hover{color:var(--concrete);background:var(--muted)}.filter-bar{display:flex;gap:.375rem;margin-bottom:1rem}.filter-btn{font-family:var(--font-mono);font-size:.6875rem;padding:.25rem .625rem;border:var(--border-width) solid var(--concrete-dark);border-radius:3px;background:var(--surface);color:var(--muted);cursor:pointer;text-transform:uppercase;letter-spacing:.05em;transition:all .15s var(--ease-standard)}.filter-btn:hover{border-color:var(--charcoal);color:var(--charcoal)}.filter-btn--active{background:var(--charcoal);border-color:var(--charcoal);color:var(--concrete)}.node-detail{background:var(--surface);border:var(--border-width) solid var(--concrete-dark);border-radius:4px;padding:1.25rem;margin-top:1rem}.node-detail-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.node-detail-title{font-family:var(--font-mono);font-size:.875rem;font-weight:500}.detail-section{margin-bottom:1.5rem}.detail-section:last-child{margin-bottom:0}.detail-section-label{font-family:var(--font-mono);font-size:.65rem;text-transform:uppercase;letter-spacing:.22em;color:var(--rust);margin-bottom:.5rem;display:flex;align-items:center;gap:.5rem}.detail-section-label:before{content:"";display:block;width:1rem;height:var(--border-width);background:var(--rust)}.meta-value--link{color:var(--rust);cursor:pointer}.meta-value--link:hover{color:var(--rust-light);text-decoration:underline}.dag-node--selected rect{stroke:var(--rust)!important;stroke-width:2.5!important}.json-parse-error{font-family:var(--font-mono);font-size:.6875rem;color:var(--rust);margin-top:.25rem}.station-table tr.clickable-row{cursor:pointer}.station-table tr.clickable-row:hover td{background:var(--concrete-dark)}.station-table tr.is-selected td{background:var(--concrete-dark);box-shadow:inset 2px 0 0 var(--patina)}.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem}.page-header-actions{display:flex;gap:.5rem;align-items:center}.schema-pair{display:grid;grid-template-columns:1fr 1fr;grid-gap:1rem;gap:1rem}.config-grid{display:flex;flex-wrap:wrap;gap:1.5rem;margin-bottom:.5rem}.config-item{display:flex;flex-direction:column;gap:.125rem}.config-item-label{font-family:var(--font-mono);font-size:.625rem;text-transform:uppercase;letter-spacing:.15em;color:var(--muted)}.config-item-value{font-family:var(--font-mono);font-size:.875rem;color:var(--charcoal)}.workflow-layout{display:flex;gap:0;align-items:flex-start;border:var(--border-width) solid var(--concrete-dark);border-radius:4px;background:var(--surface);min-height:400px}.workflow-sidebar{width:220px;flex-shrink:0;border-right:var(--border-width) solid var(--concrete-dark);padding:.5rem 0;overflow-y:auto;max-height:calc(100vh - var(--header-height) - 10rem);position:-webkit-sticky;position:sticky;top:calc(var(--header-height) + 1.5rem)}.workflow-sidebar-label{font-family:var(--font-mono);font-size:.6rem;text-transform:uppercase;letter-spacing:.2em;color:var(--muted);padding:.375rem .75rem .5rem}.workflow-node-item{display:flex;align-items:center;gap:.5rem;width:100%;padding:.5rem .75rem;background:none;cursor:pointer;font-family:var(--font-mono);font-size:.8125rem;color:var(--charcoal);text-align:left;transition:background .15s var(--ease-standard);border:none;border-left:2px solid transparent}.workflow-node-item:hover{background:var(--concrete)}.workflow-node-item--active{background:var(--concrete);border-left-color:var(--patina)}.workflow-node-item--failed{color:var(--rust)}.workflow-node-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.workflow-node-dot--running{animation:signal-pulse var(--duration-pulse) ease-out infinite}.workflow-node-name{flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.workflow-node-duration{font-size:.6875rem;color:var(--muted);flex-shrink:0}.workflow-panel{flex:1 1;min-width:0;padding:1.25rem;overflow-y:auto;max-height:calc(100vh - var(--header-height) - 10rem)}.node-detail-meta{font-family:var(--font-mono);font-size:.75rem;color:var(--muted)}@media (max-width:768px){.workflow-layout{flex-direction:column;min-height:auto}.workflow-sidebar{width:100%;max-height:none;position:static;border-right:none;border-bottom:var(--border-width) solid var(--concrete-dark);display:flex;overflow-x:auto;padding:.25rem;gap:.25rem}.workflow-sidebar-label{display:none}.workflow-node-item{white-space:nowrap;padding:.375rem .5rem;border-left:none;border-bottom:2px solid transparent;font-size:.75rem}.workflow-node-item--active{border-bottom-color:var(--patina);border-left-color:transparent}.workflow-panel{max-height:none}}@media (max-width:640px){.station-sidebar,[data-collapsed=false] .station-sidebar,[data-collapsed=true] .station-sidebar{width:48px}.station-main,[data-collapsed=false] .station-main,[data-collapsed=true] .station-main{margin-left:48px;min-width:0}.nav-label,.sidebar-collapse-btn,.station-sidebar-logo h1,.station-sidebar-logo>span,.station-sidebar-nav-label{display:none}.station-sidebar-logo{padding:.75rem;display:flex}.station-sidebar-logo,.station-sidebar-mark,.station-sidebar-nav a{justify-content:center}.station-sidebar-nav a{padding:.625rem .5rem;border-left-color:transparent}.station-sidebar-nav a.active{border-left-color:transparent;background:var(--wire)}.station-header{padding:0 .875rem}.station-content{min-width:0;max-width:100%;padding:1rem;overflow-x:auto}.station-table{min-width:720px}}.collapsible-header{display:flex;align-items:center;gap:.375rem;font-family:var(--font-mono);font-size:.75rem;color:var(--muted);cursor:pointer;background:none;border:none;padding:.375rem 0;text-transform:uppercase;letter-spacing:.1em;transition:color .15s var(--ease-standard)}.collapsible-header:hover{color:var(--charcoal)}.collapsible-chevron{font-size:.625rem;line-height:1}.collapsible-content{padding-top:.5rem}.activity-row{cursor:pointer;border-radius:2px;transition:background .15s var(--ease-standard)}.activity-row:hover{background:var(--concrete-dark)}.theme-toggle{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;border-radius:4px;background:transparent;color:var(--muted);cursor:pointer;transition:color .2s var(--ease-standard),background .2s var(--ease-standard)}.theme-toggle:hover{color:var(--charcoal);background:var(--concrete-dark)}.login-page{display:flex;align-items:center;justify-content:center;min-height:100vh;background:var(--concrete)}.login-card{width:320px;background:var(--surface);border:var(--border-width) solid var(--concrete-dark);border-radius:4px;padding:2rem 1.5rem}.login-header{display:flex;align-items:center;gap:.5rem;margin-bottom:1.5rem;color:var(--charcoal)}.login-header h1{font-family:var(--font-display);font-size:1.25rem;font-weight:400}.login-field{margin-bottom:.75rem}.login-field label{display:block;font-family:var(--font-mono);font-size:.625rem;text-transform:uppercase;letter-spacing:.15em;color:var(--muted);margin-bottom:.25rem}.login-field input{width:100%;padding:.5rem .625rem;font-family:var(--font-mono);font-size:.8125rem;color:var(--charcoal);background:var(--concrete);border:var(--border-width) solid var(--concrete-dark);border-radius:3px;outline:none;transition:border-color .15s var(--ease-standard)}.login-field input:focus{border-color:var(--patina)}.login-error{font-family:var(--font-mono);font-size:.75rem;color:var(--rust);margin-bottom:.75rem}.login-btn{width:100%;justify-content:center;margin-top:.25rem}.logout-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;border-radius:4px;background:transparent;color:var(--muted);cursor:pointer;transition:color .2s var(--ease-standard),background .2s var(--ease-standard)}.logout-btn:hover{color:var(--rust);background:var(--concrete-dark)}.execution-intro{color:var(--muted);margin-bottom:1.25rem}.execution-owner{margin:1rem 0}.execution-owner-label{display:block;margin-bottom:.4rem;font-family:var(--font-mono);font-size:.75rem;color:var(--muted)}.execution-owner-controls{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem}.execution-owner-controls>select{flex:1 1;min-width:min(220px,100%);max-width:480px;min-height:36px}.execution-owner-status{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem}.execution-toolbar{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.75rem;margin:1rem 0}.execution-field{display:flex;flex-direction:column;gap:.4rem;margin:.8rem 0;min-width:0}.execution-field>span{font-family:var(--font-mono);font-size:.75rem;color:var(--muted)}.execution-field select{min-height:36px}.execution-field .input-textarea{margin-top:0}.execution-toolbar .execution-field{margin:0}.execution-result h2,.execution-toolbar h2{font-size:.875rem;font-weight:500;margin:0}.execution-grow{flex:1 1;min-width:180px}.execution-note{color:var(--muted);font-size:.8125rem;line-height:1.6}.execution-card{margin-top:1.25rem;padding:1.25rem}.execution-card>.execution-toolbar:first-child{margin-top:0}.execution-error{margin:1rem 0;padding:.85rem 1rem;border:1px solid var(--rust);border-radius:4px;font-size:.875rem;line-height:1.5;overflow-wrap:anywhere}.execution-result{margin-top:1.5rem}.execution-output{margin:.75rem 0;padding:1rem;background:var(--code-bg);color:var(--code-text);border:1px solid var(--wire);border-radius:4px;font:.8125rem/1.6 var(--font-mono);white-space:pre-wrap;overflow-wrap:anywhere;max-height:480px;overflow:auto}.execution-screenshot{margin:1.5rem 0 0}.execution-screenshot img{display:block;width:100%;height:auto;border:1px solid var(--wire);border-radius:4px}.execution-screenshot figcaption{margin:.65rem 0}@media (max-width:640px){.execution-card{padding:.85rem}.execution-grow,.execution-owner-controls>select{flex-basis:100%;max-width:none}}.sandbox-terminal{height:360px;padding:.75rem;background:#101214;border:1px solid var(--wire);border-radius:4px;overflow:hidden}.execution-card>h2{font-size:1rem;font-weight:500;margin:0 0 .75rem}.execution-file-list{display:grid;grid-gap:.3rem;gap:.3rem;margin:.75rem 0}.execution-file-row{display:flex;align-items:center;gap:.75rem;padding:.5rem 0;border-bottom:1px solid var(--wire)}.execution-file-row>:first-child{flex:1 1;min-width:0;overflow-wrap:anywhere;text-align:left}.execution-back{display:inline-block;margin:0 0 1rem;color:var(--muted);font-size:.8125rem}.execution-back:hover{color:var(--charcoal)}.execution-intro{overflow-wrap:anywhere}.execution-navigation{display:flex;flex-wrap:wrap;gap:.25rem 1.25rem;border-bottom:1px solid var(--wire);margin:1.5rem 0}.execution-navigation a{padding:.7rem .1rem;color:var(--muted);border-bottom:2px solid transparent;font:.8125rem var(--font-mono);text-decoration:none}.execution-navigation a:hover{color:var(--charcoal)}.execution-navigation a[aria-current=page]{color:var(--charcoal);border-bottom-color:var(--patina)}.execution-resource-list{display:grid;grid-gap:.65rem;gap:.65rem;margin:1.25rem 0}.execution-resource{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.1rem 1.25rem;border:1px solid var(--wire);border-radius:4px;color:var(--charcoal);text-decoration:none}.execution-resource:hover{border-color:var(--patina);background:var(--concrete-dark)}.execution-resource>span:first-child{min-width:0}.execution-resource strong{display:block;overflow-wrap:anywhere;font-size:.8125rem;font-weight:500;margin-bottom:.35rem}.execution-resource .execution-note{display:block}.execution-detail-heading{display:flex;align-items:center;flex-wrap:wrap;justify-content:space-between;gap:1rem;margin:1rem 0}.execution-detail-heading>.execution-note{flex:1 1;min-width:180px}.execution-back:focus-visible,.execution-navigation a:focus-visible,.execution-resource:focus-visible{outline:2px solid var(--patina);outline-offset:4px}.station-header{gap:1rem}.station-header>div{flex-shrink:0}.breadcrumb{min-width:0;overflow:hidden}.breadcrumb-item{min-width:0}.breadcrumb-item:last-child{flex-shrink:0}@media (max-width:640px){.breadcrumb-item:not(:first-child):not(:last-child){display:none}}.sandbox-explorer{padding:0;overflow:hidden}.explorer-heading{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;padding:1rem}.explorer-heading h2{font-size:1rem;font-weight:500;margin:0}.explorer-actions{display:flex;flex-wrap:wrap;gap:.5rem}.sandbox-explorer>.execution-error,.sandbox-explorer>.execution-note{margin:.5rem 1rem}.explorer-upload{position:relative;overflow:hidden;cursor:pointer}.explorer-upload input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}.explorer-upload:focus-within{outline:2px solid var(--patina);outline-offset:2px}.explorer-upload.is-disabled{opacity:.5;cursor:default}.explorer-breadcrumbs{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem;padding:.75rem 1rem;border-block:1px solid var(--wire);font:.75rem var(--font-mono)}.explorer-breadcrumbs>span{display:inline-flex;align-items:center;gap:.35rem;min-width:0}.explorer-breadcrumbs button,.explorer-text-button{background:none;border:none;color:var(--muted);padding:.2rem;font:inherit;cursor:pointer;overflow-wrap:anywhere}.explorer-breadcrumbs button:hover,.explorer-text-button:hover{color:var(--charcoal)}.explorer-panes{display:grid;grid-template-columns:minmax(230px,32%) minmax(0,1fr)}.explorer-directory{min-width:0;border-right:1px solid var(--wire);padding:.85rem}.explorer-directory-form{display:flex;gap:.4rem;margin-bottom:.65rem}.explorer-directory-form input{min-width:0;flex:1 1}.explorer-directory>input{width:100%}.explorer-directory-options{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.5rem;margin:.8rem 0;font-size:.7rem;color:var(--muted)}.explorer-directory-options label{display:flex;gap:.35rem;align-items:center}.explorer-entries{list-style:none;padding:0;margin:0;max-height:520px;overflow-y:auto}.explorer-entries li{display:flex;align-items:center;border-radius:3px}.explorer-entries li:hover{background:var(--concrete-dark)}.explorer-entries li[data-selected=true]{background:var(--concrete-dark);box-shadow:inset 2px 0 var(--patina)}.explorer-entry{display:flex;gap:.6rem;align-items:center;min-width:0;flex:1 1;padding:.7rem .5rem;background:none;border:none;color:var(--charcoal);text-align:left;cursor:pointer;font:.75rem var(--font-mono)}.explorer-entry svg{flex-shrink:0;color:var(--muted)}.explorer-entry-name{flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.explorer-entry-size{font-size:.625rem;color:var(--muted);white-space:nowrap}.explorer-remove{flex-shrink:0;width:28px;height:30px;background:none;border:none;color:var(--muted);cursor:pointer;font-size:1rem}.explorer-remove:hover{color:var(--rust)}.explorer-empty{margin:2rem .4rem;color:var(--muted);font-size:.8rem;line-height:1.5}.explorer-pagination{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;padding-top:1rem}.explorer-pagination .btn{font-size:.625rem;padding:.35rem .45rem}.explorer-editor{min-width:0;padding:1rem}.explorer-editor-heading{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem;font:.8rem var(--font-mono);overflow-wrap:anywhere}.explorer-content .input-textarea{min-height:360px;font:.8125rem/1.7 var(--font-mono);-moz-tab-size:2;tab-size:2;white-space:pre}.explorer-editor-meta{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.4rem;font:.65rem var(--font-mono);color:var(--muted)}.explorer-binary{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;min-height:300px;padding:2rem;border:1px dashed var(--wire);color:var(--muted);font-size:.8125rem}.explorer-binary h3{margin:1rem 0 .5rem;color:var(--charcoal);font-weight:500}.sandbox-explorer button:disabled{cursor:default;opacity:.45}.sandbox-explorer button:focus-visible{outline:2px solid var(--patina);outline-offset:-2px}@media (max-width:900px){.explorer-panes{grid-template-columns:minmax(0,1fr)}.explorer-directory{border-right:0;border-bottom:1px solid var(--wire)}.explorer-entries{max-height:280px}}.registry-screen{max-width:1080px}.registry-context{display:flex;flex-wrap:wrap;gap:.4rem 1rem;padding:.75rem 0 1rem;margin-bottom:1.25rem;border-bottom:1px solid var(--wire);font-size:.75rem;color:var(--muted)}.registry-context strong{color:var(--charcoal);overflow-wrap:anywhere}.registry-context>:last-child{flex-basis:100%}.registry-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.registry-heading .page-title{overflow-wrap:anywhere}.registry-heading>button{flex-shrink:0}.registry-list{display:grid;border-top:1px solid var(--wire)}.registry-row{display:grid;grid-template-columns:minmax(160px,1.2fr) auto minmax(120px,1fr) 20px;align-items:center;grid-gap:1rem;gap:1rem;padding:1.1rem .25rem;border-bottom:1px solid var(--wire);text-decoration:none;color:inherit}.registry-row:hover{background:var(--concrete-dark)}.registry-row>span{color:var(--muted);font-size:.75rem}.registry-digest{overflow-wrap:anywhere;font-size:.7rem;color:var(--muted)}.registry-tabs{display:flex;flex-wrap:wrap;gap:1.25rem;border-bottom:1px solid var(--wire);margin:1rem 0}.registry-tabs a{padding:.65rem 0;color:var(--muted);text-decoration:none;border-bottom:2px solid transparent}.registry-tabs a[aria-current=page]{color:var(--charcoal);border-bottom-color:var(--rust)}.registry-panel{max-width:840px}.registry-details{margin:1.5rem 0}.registry-details summary{cursor:pointer;color:var(--muted);font-size:.8125rem}.registry-artifacts article+article{margin-top:1.25rem;padding-top:1.25rem;border-top:1px solid var(--wire)}.registry-dependency{display:grid;grid-gap:.35rem;gap:.35rem;padding:.6rem 0}.registry-export-title{display:flex;gap:1rem;align-items:center}.registry-export-title h2{margin:0}.registry-screen .btn+.btn{margin-left:.5rem}.registry-screen input[type=file]{max-width:100%;font-size:.8125rem}@media(max-width:640px){.registry-row{grid-template-columns:1fr auto;gap:.6rem}.registry-row>:nth-child(3){grid-column:1}}.registry-context .execution-field{flex-basis:100%;max-width:540px;margin:.5rem 0}.registry-context .execution-field select{width:100%}.registry-bindings{margin:1.25rem 0;padding:1rem;border:1px solid var(--wire);min-width:0}.registry-bindings legend{padding:0 .4rem}.registry-binding{display:grid;grid-gap:.5rem;gap:.5rem;padding:1rem 0;border-top:1px solid var(--wire)}.registry-binding .execution-field{margin:0}.registry-binding>.btn{justify-self:start;margin:.5rem 0}