.auth-shell{background:var(--ground);grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);width:100%;min-height:100vh;display:grid}.auth-shell>.auth-loading{color:var(--ink-2);font-family:var(--mono);font-size:var(--text-ledger);grid-column:1/-1;place-self:center;margin:0}.auth-pane{border-right:1px solid var(--line);flex-direction:column;justify-content:center;align-items:center;min-width:0;padding:clamp(2rem,6vw,5rem);display:flex}.auth-pane>*{width:100%;max-width:420px}.auth-topline{align-items:center;margin-bottom:clamp(2.5rem,6vw,4.5rem);display:flex}.auth-pane h1{color:var(--ink);font-family:var(--display);letter-spacing:.01em;text-transform:uppercase;text-wrap:balance;margin:0;font-size:1.75rem;font-weight:400;line-height:1.15}.auth-lede{color:var(--ink-2);font-size:var(--text-ui);margin:.75rem 0 0;line-height:1.55}.social-grid{grid-template-columns:1fr 1fr;gap:.5rem;margin-top:2rem;display:grid}.social-grid button,.auth-submit{min-height:var(--control);border:1px solid var(--line);color:var(--ink);background:var(--ground);font-size:var(--text-ui);transition:background-color var(--t-fast) var(--ease-out), border-color var(--t-fast) var(--ease-out);padding:0 .9rem;font-weight:500}.social-grid button:hover:not(:disabled){border-color:var(--ink);background:var(--ground-2)}.auth-divider{color:var(--ink-2);font-size:var(--text-meta);align-items:center;gap:.75rem;margin:1.5rem 0;display:flex}.auth-divider:before,.auth-divider:after{background:var(--line);content:"";flex:1;height:1px}.auth-form{gap:1rem;display:grid}.auth-form label{color:var(--ink);font-size:var(--text-ui);gap:.35rem;font-weight:500;display:grid}.auth-form input{height:var(--control);border:1px solid var(--line);color:var(--ink);background:var(--ground);font-size:var(--text-body);transition:border-color var(--t-fast) var(--ease-out);padding:0 .75rem}.auth-form input:hover{border-color:var(--ink-3)}.auth-form input:focus-visible{border-color:var(--ink)}.auth-submit{border-color:var(--ink);color:var(--ground);background:var(--ink);margin-top:.25rem}.auth-submit:hover:not(:disabled){border-color:var(--ink-2);background:var(--ink-2)}.auth-submit:disabled,.social-grid button:disabled{border-color:var(--line);color:var(--ink-3);background:var(--ground-2)}.auth-error{border:1px solid var(--del);color:var(--del);background:var(--del-fill);font-size:var(--text-ui);margin:0;padding:.6rem .75rem;line-height:1.5}.auth-switch{color:var(--ink-2);font-size:var(--text-ui);margin:1.5rem 0 0}.auth-switch a{color:var(--ink);font-weight:500}.auth-proof{min-width:0;color:var(--ink);background:var(--lane-fill);align-content:center;gap:2rem;padding:clamp(2rem,6vw,5rem);display:grid}.auth-proof>*{max-width:440px;margin:0}.auth-proof h2{font-family:var(--display);font-size:var(--text-ui);letter-spacing:.04em;text-transform:uppercase;font-weight:400;line-height:1.2}.auth-lane{gap:1.5rem;padding:0;list-style:none;display:grid;position:relative}.auth-lane:before{top:20px;bottom:20px;left:calc(20px - var(--lane-width) / 2);width:var(--lane-width);background:var(--lane-line);content:"";position:absolute}.auth-lane li{align-items:center;gap:.875rem;display:flex;position:relative}.auth-lane-icon{z-index:1;border:1px solid var(--lane-line);border-radius:var(--radius);background:var(--ground);width:40px;height:40px;color:var(--ink);flex:none;place-items:center;display:grid;position:relative}.auth-lane-icon svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:24px;height:24px;display:block}.auth-lane-label{font-family:var(--mono);font-size:var(--text-ledger);color:var(--ink)}.auth-lane-note{color:var(--lane);font-family:var(--mono);font-size:var(--text-meta)}.auth-facts{border-top:1px solid var(--line);gap:1.25rem;padding-top:2rem;display:grid}.auth-facts dt{color:var(--ink);font-size:var(--text-ui);font-weight:600}.auth-facts dd{color:var(--ink);font-size:var(--text-ui);margin:.2rem 0 0;line-height:1.5}.auth-proof-foot{color:var(--lane);font-family:var(--mono);font-size:var(--text-meta)}@media (width<=820px){.auth-shell{grid-template-columns:minmax(0,1fr)}.auth-pane{border-right:0;border-bottom:1px solid var(--line);padding:2rem 1.25rem 3rem}.auth-pane>*{max-width:none}.auth-proof{padding:2rem 1.25rem 3rem}}@media (width<=480px){.social-grid{grid-template-columns:1fr}}html:has(.graph-console){scroll-behavior:auto}.run-sidebar{--gutter:28px;--lane-x:13px;top:var(--bar);min-width:0;height:calc(100dvh - var(--bar));border-right:1px solid var(--line);color:var(--ink);background:var(--ground);font-family:var(--sans);font-size:var(--text-ui);flex-direction:column;line-height:1.4;display:flex;position:sticky;overflow:hidden}.run-sidebar :is(h1,h2,p,ul,dl,dd,figure){margin:0}.run-sidebar :not(.node)>svg,.sidebar-hover-card svg,.sidebar-snooze-popover svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:16px;height:16px}.run-sidebar .lane{width:var(--lane-width);background:var(--ink);display:block}.sidebar-header{flex:none;display:grid}.sidebar-header-top{min-height:var(--control);justify-content:space-between;align-items:center;padding-left:16px;display:flex}.sidebar-heading{align-items:baseline;gap:10px;min-width:0;display:flex}.sidebar-heading h1{font-family:var(--display);font-size:var(--text-ui);letter-spacing:.06em;text-transform:uppercase;font-weight:400}.sidebar-active-count{color:var(--ink-2);font-family:var(--mono);font-size:var(--text-meta);font-variant-numeric:tabular-nums;white-space:nowrap}.sidebar-collapse{width:var(--control);min-height:var(--control);color:var(--ink-2);transition:background-color var(--t-fast) var(--ease-out);background:0 0;border:0;border-radius:0;justify-content:center;align-items:center;gap:6px;padding:0;display:inline-flex}.sidebar-collapse:has(.sidebar-shortcut-hint){width:auto;padding:0 10px 0 12px}.sidebar-collapse:hover{color:var(--ink);background:var(--ground-2)}.sidebar-shortcut-hint{border:1px solid var(--line);border-radius:var(--radius);padding:1px 5px;font-size:11px;line-height:1.3}.sidebar-new-run{grid-template-columns:var(--gutter) minmax(0, 1fr);width:100%;min-height:var(--control);border:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);text-align:left;transition:background-color var(--t-fast) var(--ease-out), color var(--t-fast) var(--ease-out);background:0 0;border-radius:0;align-items:center;padding:0 12px 0 0;font-weight:500;display:grid}.sidebar-new-run:hover{background:var(--ground-2)}.sidebar-new-run[aria-pressed=true]{color:var(--ground);background:var(--ink)}.sidebar-new-run[aria-pressed=true] .node{--node-color:var(--ground);background:var(--ink)}.sidebar-new-run[aria-pressed=true] .lane{background:var(--ground)}.sidebar-branch{height:var(--control);place-items:center;display:grid;position:relative}.sidebar-branch .lane{top:50%;bottom:0;left:var(--lane-x);position:absolute}.sidebar-branch .node{position:relative}.sidebar-search-row{min-height:var(--control);border-bottom:1px solid var(--line-2);align-items:center;display:flex;position:relative}.sidebar-search-icon{color:var(--ink-2);pointer-events:none;position:absolute;left:16px}.sidebar-search-input{min-width:0;min-height:var(--control);appearance:none;padding:0 var(--control) 0 40px;font-size:var(--text-ui);background:0 0;border:0;border-radius:0;flex:1}.sidebar-search-input::placeholder{color:var(--ink-2);opacity:1}.sidebar-search-input:focus-visible{outline-offset:-2px}.sidebar-search-input::-webkit-search-cancel-button{appearance:none}.sidebar-search-input::-webkit-search-decoration{appearance:none}.sidebar-clear-search{width:var(--control);height:var(--control);color:var(--ink-2);background:0 0;border:0;border-radius:0;place-items:center;padding:0;display:grid;position:absolute;top:0;right:0}.sidebar-clear-search:hover{color:var(--ink);background:var(--ground-2)}.sidebar-index{flex-direction:column;flex:1;min-height:0;display:flex}.sidebar-project-filter{border-bottom:1px solid var(--line-2);flex:none;display:block;position:relative}.sidebar-project-filter select{background:var(--ground);width:100%;min-height:40px;font-size:var(--text-ui);appearance:none;cursor:pointer;text-overflow:ellipsis;white-space:nowrap;border:0;border-radius:0;padding:0 40px 0 16px;overflow:hidden}.sidebar-project-filter select:hover{background:var(--ground-2)}.sidebar-project-filter select:focus-visible{outline-offset:-2px}.sidebar-select-chevron{color:var(--ink-2);pointer-events:none;position:absolute;top:50%;right:14px;transform:translateY(-50%)}.sidebar-sections{overscroll-behavior:contain;flex:1;min-height:0;overflow:hidden auto}.sidebar-log{position:relative}.sidebar-log-lane{z-index:1;top:0;bottom:0;left:var(--lane-x);pointer-events:none;position:absolute}.sidebar-log:has(.sidebar-empty)>.sidebar-log-lane{display:none}.sidebar-section{min-width:0}.sidebar-section-heading{min-height:var(--control);padding:0 12px 0 var(--gutter);border-bottom:1px solid var(--line);color:var(--ink-2);font-family:var(--mono);font-size:var(--text-meta);letter-spacing:.06em;text-transform:uppercase;align-items:center;gap:6px;font-weight:500;display:flex}.sidebar-section-count{font-variant-numeric:tabular-nums}.sidebar-section-heading:has(.sidebar-section-toggle){padding:0}.sidebar-section-toggle{width:100%;min-height:var(--control);color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit;text-align:left;transition:background-color var(--t-fast) var(--ease-out);background:0 0;border:0;border-radius:0;align-items:center;gap:6px;padding:0 12px 0 0;display:flex}.sidebar-section-toggle:hover:not(:disabled){color:var(--ink);background:var(--ground-2)}.sidebar-section-toggle:disabled{color:var(--ink-3)}.sidebar-section-toggle svg{z-index:2;box-sizing:content-box;background:var(--ground);width:16px;height:16px;margin:0 0 0 6px;padding:2px 0;position:relative}.sidebar-section-toggle:hover:not(:disabled) svg{background:var(--ground-2)}.sidebar-section-list{padding:0;list-style:none}.sidebar-run-row{border-bottom:1px solid var(--line-2);transition:background-color var(--t-fast) var(--ease-out);position:relative}.sidebar-run-row:is(:hover,:focus-within,.is-selected){background:var(--ground-2)}.sidebar-run-row.is-selected:before{content:"";z-index:1;top:0;bottom:0;left:calc(var(--lane-x) - 1px);background:var(--ink);width:4px;position:absolute}.sidebar-hover-anchor{min-width:0;position:relative}.sidebar-run-button{grid-template-columns:var(--gutter) minmax(0, 1fr) auto;width:100%;color:var(--ink);font-family:var(--sans);text-align:left;background:0 0;border:0;border-radius:0;grid-template-areas:"node line line""node title diff""node project project";align-items:start;gap:2px 8px;padding:8px 12px 8px 0;display:grid}.sidebar-run-button:focus-visible{outline-offset:-2px}.sidebar-row-node{z-index:2;grid-area:node;justify-self:center;margin-top:2px}.sidebar-row-line{min-width:0;color:var(--ink-2);font-family:var(--mono);font-size:var(--text-meta);font-variant-numeric:tabular-nums;grid-area:line;align-items:baseline;gap:8px;line-height:16px;display:flex}.sidebar-row-status{color:var(--ink);white-space:nowrap;font-weight:500}.sidebar-row-id{white-space:nowrap}.sidebar-row-agent{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.sidebar-row-age{text-align:right;white-space:nowrap;transition:opacity var(--t-fast) var(--ease-out);flex:none;margin-left:auto}.sidebar-row-title{-webkit-line-clamp:2;overflow-wrap:anywhere;font-size:var(--text-ui);-webkit-box-orient:vertical;grid-area:title;line-height:18px;display:-webkit-box;overflow:hidden}.sidebar-row-diff{font-family:var(--mono);font-size:var(--text-meta);font-variant-numeric:tabular-nums;white-space:nowrap;transition:opacity var(--t-fast) var(--ease-out);grid-area:diff;gap:6px;line-height:18px;display:flex}.sidebar-row-diff .additions{color:var(--add)}.sidebar-row-diff .deletions{color:var(--del)}.sidebar-row-project{min-width:0;color:var(--ink-2);font-family:var(--mono);font-size:var(--text-meta);text-overflow:ellipsis;white-space:nowrap;grid-area:project;line-height:16px;overflow:hidden}.sidebar-run-row:is(.is-settled,.is-snoozed) .sidebar-row-title{-webkit-line-clamp:1;color:var(--ink-2)}.sidebar-run-row:is(.is-settled,.is-snoozed):is(.is-selected,:hover,:focus-within) .sidebar-row-title{color:var(--ink)}.sidebar-row-actions{z-index:3;background:var(--ground-2);opacity:0;pointer-events:none;transition:opacity var(--t-fast) var(--ease-out), transform var(--t-fast) var(--ease-out);align-items:center;display:flex;position:absolute;top:2px;right:4px;transform:translate(3px)}.sidebar-run-row:is(:hover,:focus-within,[data-snooze-open=true]) .sidebar-row-actions{opacity:1;pointer-events:auto;transform:none}.sidebar-row-actions:has([aria-expanded=true]){opacity:1;pointer-events:auto;transform:none}.sidebar-row-actions>button,.sidebar-hover-info{width:var(--control);height:var(--control);border-radius:var(--radius);color:var(--ink-2);transition:color var(--t-fast) var(--ease-out), background-color var(--t-fast) var(--ease-out);background:0 0;border:0;place-items:center;padding:0;display:grid}.sidebar-row-actions>button:hover,.sidebar-row-actions>button[aria-expanded=true],.sidebar-hover-info:hover:not(:disabled){color:var(--ink);background:var(--ground-3)}.sidebar-hover-info{z-index:3;display:none;position:absolute;top:2px;right:92px}@media (hover:hover) and (pointer:fine) and (width>=900px){.sidebar-run-row:is(:hover,:focus-within,[data-snooze-open=true]) .sidebar-row-age{opacity:0}}.sidebar-empty{padding:16px 16px 16px var(--gutter);color:var(--ink-2);font-size:var(--text-meta);justify-items:start;gap:10px;line-height:1.5;display:grid}.sidebar-empty button{min-height:var(--control);border:1px solid var(--line);color:var(--ink);background:var(--ground);font-size:var(--text-ui);padding:0 14px;font-weight:500}.sidebar-empty button:hover{background:var(--ground-2)}.sidebar-undo-notice{border-top:1px solid var(--line);font-size:var(--text-meta);animation:sidebar-panel-enter var(--t-base) var(--ease-out);flex:none;align-items:center;gap:4px;padding:0 0 0 16px;display:flex}.sidebar-undo-notice output{overflow-wrap:anywhere;flex:1;min-width:0;padding:6px 0}.sidebar-undo-notice button{min-height:var(--control);background:0 0;border:0;border-radius:0;padding:0 12px;font-weight:600}.sidebar-undo-notice button:hover{background:var(--ground-2)}.sidebar-undo-dismiss{width:var(--control);color:var(--ink-2);place-items:center;padding:0;display:grid}.sidebar-preferences-note{border-top:1px solid var(--line-2);color:var(--ink-2);font-size:var(--text-meta);flex:none;padding:8px 16px 10px;line-height:1.4}.sidebar-hover-card,.sidebar-snooze-popover{z-index:50;border:1px solid var(--line);border-radius:var(--radius);width:320px;max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);color:var(--ink);background:var(--ground);font-family:var(--sans);font-size:var(--text-ui);line-height:1.45;position:fixed;overflow:auto;box-shadow:0 8px 24px -12px #00000059}.sidebar-hover-card{padding:12px 14px}.sidebar-hover-card[data-state=closing]{pointer-events:none}.sidebar-hover-title{overflow-wrap:anywhere;margin:0 0 10px;font-weight:600}.sidebar-hover-card dl{grid-template-columns:84px minmax(0,1fr);gap:4px 10px;margin:0;display:grid}.sidebar-hover-card dt{color:var(--ink-2);font-size:var(--text-meta);font-weight:500;line-height:20px}.sidebar-hover-card dd{overflow-wrap:anywhere;min-width:0;margin:0}.sidebar-hover-card code{font-size:var(--text-ledger)}.sidebar-hover-error{border-top:1px solid var(--line-2);color:var(--del);font-size:var(--text-meta);margin:10px 0 0;padding-top:10px}.graph-console.sidebar-overlay-root{display:contents}.sidebar-snooze-popover{margin:0;padding:0;inset:auto}.sidebar-snooze-popover:popover-open{animation:sidebar-panel-enter var(--t-base) var(--ease-out)}.sidebar-snooze-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:8px;padding:10px 0 10px 14px;display:flex}.sidebar-snooze-heading h2{font-size:var(--text-ui);margin:0;font-weight:600}.sidebar-snooze-heading p{color:var(--ink-2);font-size:var(--text-meta);margin:2px 0 0}.sidebar-snooze-close{width:var(--control);height:var(--control);color:var(--ink-2);background:0 0;border:0;flex:none;place-items:center;padding:0;display:grid}.sidebar-snooze-close:hover{color:var(--ink);background:var(--ground-2)}.sidebar-snooze-presets{display:grid}.sidebar-snooze-presets button{width:100%;min-height:var(--control);border:0;border-bottom:1px solid var(--line-2);text-align:left;transition:background-color var(--t-fast) var(--ease-out);background:0 0;border-radius:0;grid-template-columns:minmax(0,1fr) auto 16px;align-items:center;gap:10px;padding:0 12px 0 14px;display:grid}.sidebar-snooze-presets button:hover{background:var(--ground-2)}.sidebar-snooze-presets button small{color:var(--ink-2);font-family:var(--mono);font-size:var(--text-meta);font-variant-numeric:tabular-nums}.sidebar-snooze-presets button svg{color:var(--ink-2)}.sidebar-snooze-custom summary{min-height:var(--control);cursor:pointer;align-items:center;gap:8px;padding:0 14px 0 12px;font-weight:500;list-style:none;display:flex}.sidebar-snooze-custom summary::-webkit-details-marker{display:none}.sidebar-snooze-custom summary:hover{background:var(--ground-2)}.sidebar-snooze-custom summary svg{color:var(--ink-2);transition:transform var(--t-fast) var(--ease-out)}.sidebar-snooze-custom[open] summary svg{transform:rotate(90deg)}.sidebar-snooze-custom form{gap:8px;padding:4px 14px 14px;display:grid}.sidebar-snooze-custom label{color:var(--ink-2);font-size:var(--text-meta);font-weight:500}.sidebar-snooze-custom input{min-height:var(--control);border:1px solid var(--line);color:var(--ink);background:var(--ground);font-family:var(--mono);font-size:var(--text-ledger);font-variant-numeric:tabular-nums;padding:0 10px}.sidebar-snooze-custom button[type=submit]{min-height:var(--control);border:1px solid var(--ink);color:var(--ground);background:var(--ink);padding:0 14px;font-weight:500}.sidebar-snooze-error{color:var(--del);font-size:var(--text-meta);margin:0}@keyframes sidebar-panel-enter{0%{opacity:0;transform:translateY(4px)}}.graph-console[data-rail=collapsed] .run-sidebar{width:var(--control)}.graph-console[data-rail=collapsed] .run-sidebar :is(.sidebar-heading,.sidebar-search-row),.graph-console[data-rail=collapsed] .sidebar-new-run-label{display:none}.graph-console[data-rail=collapsed] .sidebar-header-top{justify-content:center;padding:0}.graph-console[data-rail=collapsed] .sidebar-new-run{border-bottom-color:var(--line);grid-template-columns:1fr;padding:0}.graph-console[data-rail=collapsed] .sidebar-branch .lane{left:calc(50% - 1px)}@media (pointer:coarse),(width<=899px){.sidebar-run-row{grid-template-columns:minmax(0,1fr) auto;align-items:start;display:grid}.sidebar-hover-anchor{min-width:0;position:relative}.sidebar-run-button{grid-template-areas:"node line line""node title diff";padding:8px 0}.sidebar-row-line{flex-wrap:wrap;padding-right:46px}.sidebar-row-project{display:none}.sidebar-hover-info{display:grid;top:0;right:2px}.sidebar-row-actions{opacity:1;pointer-events:auto;background:0 0;grid-column:2;align-self:start;padding:0 4px 0 0;position:static;transform:none}.sidebar-run-row:is(.is-settled,.is-snoozed) .sidebar-run-button{grid-template-areas:"node title title";padding:4px 0}.sidebar-run-row:is(.is-settled,.is-snoozed) .sidebar-row-title{padding-right:46px;line-height:36px}.sidebar-run-row:is(.is-settled,.is-snoozed) :is(.sidebar-row-line,.sidebar-row-diff,.sidebar-row-project){display:none}}.run-sidebar .node.is-run:after,.sidebar-scrim{display:none}@media (width<=899px){.graph-console:not([data-rail=collapsed]) .run-sidebar{--drawer-width:min(320px, calc(100vw - var(--control)));z-index:30;top:var(--bar);width:var(--drawer-width);animation:sidebar-drawer-in var(--t-base) var(--ease-out);position:fixed;bottom:0;left:0;box-shadow:0 8px 24px -12px #00000059}.graph-console:not([data-rail=collapsed]) .sidebar-scrim{z-index:-1;top:var(--bar);bottom:0;right:0;left:var(--drawer-width);background:var(--overlay);animation:sidebar-scrim-in var(--t-base) var(--ease-out);border:0;border-radius:0;margin:0;padding:0;display:block;position:fixed}}@keyframes sidebar-drawer-in{0%{transform:translate(-100%)}}@keyframes sidebar-scrim-in{0%{opacity:0}}.graph-console.pull-overlay-root{background:0 0;min-height:0;display:block}.graph-console .pull-dialog{overscroll-behavior:contain;border:1px solid var(--line);border-radius:var(--radius);width:min(600px,100vw - 32px);max-height:calc(100dvh - 48px);color:var(--ink);background:var(--ground);font-size:var(--text-ui);animation:pull-dialog-in var(--t-base) var(--ease-out) both;margin:auto;padding:0;line-height:1.5;position:fixed;inset:0;overflow:auto}.graph-console .pull-dialog::backdrop{background:var(--overlay);animation:pull-backdrop-in var(--t-base) var(--ease-out) both}.graph-console .pull-dialog[data-closing=true]{animation:pull-dialog-out var(--t-fast) var(--ease-out) both}.graph-console .pull-dialog[data-closing=true]::backdrop{animation:pull-backdrop-out var(--t-fast) var(--ease-out) both}.graph-console .pull-trigger{animation:pull-trigger-in var(--t-base) var(--ease-out) both}.graph-console .pull-picker{display:inline-flex;position:relative}.graph-console .pull-picker>.pull-trigger{width:100%}.graph-console .pull-trigger>svg{transition:transform .18s var(--ease-out)}.graph-console .pull-trigger[aria-expanded=true]>svg{transform:rotate(180deg)}.graph-console .pull-choices{z-index:40;transform-origin:100% 0;border:0;width:min(280px,100vw - 48px);min-width:0;margin:0;padding:6px 0 0;display:grid;position:absolute;top:100%;right:0}.graph-console .pull-choices[data-state=closing]{pointer-events:none}.graph-console .pull-picker .pull-choices>button{background:var(--ground);text-align:left;white-space:normal;border-radius:0;grid-template-columns:minmax(0,1fr);justify-content:stretch;justify-items:start;gap:4px;height:auto;padding:12px 16px;display:grid}.graph-console .pull-picker .pull-choices>button+button{border-top:0}.graph-console .pull-picker .pull-choices>button:is(:hover,:focus-visible){background:var(--ground-2)}.graph-console .pull-choices strong{font-weight:600}.graph-console .pull-choices span{color:var(--ink-2);font-size:var(--text-ledger);line-height:1.5}@keyframes pull-dialog-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes pull-dialog-out{to{opacity:0;transform:translateY(4px)}}@keyframes pull-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes pull-backdrop-out{0%{opacity:var(--pull-backdrop-opacity,1)}to{opacity:0}}@keyframes pull-trigger-in{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:none}}.graph-console .pull-dialog-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;padding:12px 12px 12px 24px;display:flex}.graph-console .pull-dialog h2{font-family:var(--display);letter-spacing:.02em;text-transform:uppercase;font-size:1.25rem;font-weight:400;line-height:1}.graph-console .pull-close{width:var(--control);border-color:#0000;padding:0}.graph-console .pull-dialog-body{gap:0;display:grid}.graph-console .pull-description{color:var(--ink-2);padding:16px 24px 0}.graph-console .pull-run-summary{border-bottom:1px solid var(--line);gap:4px;padding:12px 24px 20px;display:grid}.graph-console .pull-run-summary strong{overflow-wrap:anywhere;font-weight:600}.graph-console .pull-run-summary>span,.graph-console .pull-broker-label{color:var(--ink-2);font-family:var(--mono);font-size:var(--text-ledger)}.graph-console .pull-run-summary code{font-size:inherit}.graph-console .pull-local-section,.graph-console .pull-command-section{gap:12px;min-width:0;padding:20px 24px;display:grid}.graph-console .pull-dialog h3{font-size:var(--text-ui);font-weight:600}.graph-console .pull-section-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.graph-console .pull-local-description,.graph-console .pull-command-section>p,.graph-console .pull-broker-setup>p,.graph-console .pull-command-help{color:var(--ink-2)}.graph-console .pull-broker-status{color:var(--ink-2);font-family:var(--mono);font-size:var(--text-ledger);align-items:center;gap:8px;display:inline-flex}.graph-console .pull-broker-status.is-online{color:var(--add)}.graph-console .pull-repository,.graph-console .pull-command{overflow-wrap:anywhere;white-space:pre-wrap;border:1px solid var(--line);border-radius:var(--radius);background:var(--ground-2);min-width:0;color:var(--ink);font-family:var(--mono);font-size:var(--text-ledger);padding:10px 12px;line-height:1.6;display:block}.graph-console .pull-local-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.graph-console .pull-unavailable{border-top:1px solid var(--line-2);border-bottom:1px solid var(--line-2);color:var(--ink-2);padding:10px 0;display:block}.graph-console .pull-result-status{grid-template-columns:var(--node-md) minmax(0, 1fr);border-top:1px solid var(--line-2);border-bottom:1px solid var(--line-2);align-items:start;column-gap:12px;padding:12px 0;display:grid}.graph-console .pull-result-status .node{margin-top:1px}.graph-console .pull-result-status strong{font-weight:600}.graph-console .pull-result-status p{color:var(--ink-2);overflow-wrap:anywhere;white-space:pre-wrap;margin-top:2px}.graph-console .pull-result-status.is-success strong{color:var(--add)}.graph-console .pull-result-status.is-error{border-color:var(--del);background:var(--del-fill);padding-left:12px;padding-right:12px}.graph-console .pull-result-status.is-error strong,.graph-console .pull-result-status.is-error p,.graph-console .pull-inline-error{color:var(--del)}.graph-console .pull-inline-error{overflow-wrap:anywhere;font-size:var(--text-ledger)}.graph-console .pull-broker-setup summary{width:fit-content;min-height:var(--control);cursor:pointer;color:var(--ink-2);align-items:center;gap:8px;font-weight:500;list-style:none;display:flex}.graph-console .pull-broker-setup summary::-webkit-details-marker{display:none}.graph-console .pull-broker-setup summary:before{content:"";width:6px;height:6px;transition:transform var(--t-fast) var(--ease-out);border-bottom:2px solid;border-right:2px solid;margin:0 4px 2px 2px;transform:rotate(-45deg)}.graph-console .pull-broker-setup[open]>summary:before{margin-bottom:4px;transform:rotate(45deg)}.graph-console .pull-broker-setup[open]>p{margin:0 0 8px}.graph-console .pull-command-group{min-width:0}.graph-console .pull-command-label,.graph-console .pull-agent-heading{color:var(--ink-2);justify-content:space-between;align-items:center;gap:8px;margin-bottom:6px;display:flex}.graph-console .pull-command-label button{min-height:32px;font-size:var(--text-ledger);padding:0 10px}.graph-console .pull-agent-heading{margin:4px 0 -6px}.graph-console .pull-agent-heading select{max-width:220px;min-height:36px;font-size:var(--text-ledger);padding:0 12px}.graph-console .pull-dialog-footer{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:12px 24px;display:flex}.graph-console .pull-dialog-footer>div{flex-wrap:wrap;align-items:center;gap:8px 12px;min-width:0;display:flex}.graph-console .pull-download{color:var(--ink-2);border-color:#0000;padding-left:0}.graph-console .pull-download:hover:not(:disabled){color:var(--ink);background:0 0;border-color:#0000}.graph-console .pull-dialog-footer output{color:var(--ink-2);font-size:var(--text-ledger)}@media (width<=600px){.graph-console .pull-dialog{width:calc(100vw - 24px);max-height:calc(100dvh - 24px - env(safe-area-inset-top) - env(safe-area-inset-bottom))}.graph-console .pull-dialog-heading{padding-left:16px}.graph-console .pull-description,.graph-console .pull-run-summary,.graph-console .pull-local-section,.graph-console .pull-command-section{padding-left:16px;padding-right:16px}.graph-console .pull-dialog-footer{flex-wrap:wrap;padding:12px 16px}.graph-console .pull-local-actions button{flex:1}.graph-console .pull-command-label button{min-width:var(--control);min-height:var(--control)}}@media (prefers-reduced-motion:reduce){.graph-console .pull-trigger>svg{transition:none}.graph-console .pull-trigger,.graph-console .pull-dialog,.graph-console .pull-dialog::backdrop,.graph-console .pull-dialog[data-closing=true],.graph-console .pull-dialog[data-closing=true]::backdrop{animation:none}}.graph-console{--rail-width:320px;--rail-collapsed:44px;--pad:24px;--stage-row:88px;--node-y:22px;grid-template-columns:minmax(0,1fr);grid-template-rows:var(--bar) minmax(0, 1fr);background:var(--ground);min-height:100dvh;color:var(--ink);font-size:var(--text-ui);line-height:1.5;display:grid}.graph-console :is(h1,h2,h3,h4,p,pre,ol,ul,dl,dd,fieldset,figure){margin:0}.graph-console :is(h1,h2,h3,h4){font-weight:600;line-height:1.3}.graph-console p{text-wrap:pretty}.graph-console :is(code,pre,kbd,time){font-variant-numeric:tabular-nums}.graph-console time{font-family:var(--mono)}.graph-console button:not(.run-sidebar *)>svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:16px;height:16px}.graph-console button:not(.run-sidebar *){min-height:var(--control);border:1px solid var(--line);border-radius:var(--radius);background:var(--ground);color:var(--ink);font-size:var(--text-ui);transition:background-color var(--t-fast) var(--ease-out), border-color var(--t-fast) var(--ease-out), color var(--t-fast) var(--ease-out);justify-content:center;align-items:center;gap:8px;padding:0 14px;font-weight:500;line-height:1.2;display:inline-flex}.graph-console button:not(.run-sidebar *):hover:not(:disabled){border-color:var(--ink-2);background:var(--ground-2)}.graph-console button:not(.run-sidebar *):disabled{color:var(--ink-3);border-color:var(--line-2);background:var(--ground-2)}.graph-console :is(.dispatch-button,.primary-action,.pull-trigger){border-color:var(--ink);background:var(--ink);color:var(--ground);font-weight:600}.graph-console :is(.dispatch-button,.primary-action,.pull-trigger):hover:not(:disabled){border-color:var(--ink-2);background:var(--ink-2)}.graph-console :is(.dispatch-button,.primary-action,.pull-trigger):disabled{color:var(--ink-3);border-color:var(--line-2);background:var(--ground-2)}.graph-console :is(input:not([type=checkbox]),select,textarea):not(.run-sidebar *){min-height:var(--control);border:1px solid var(--line);border-radius:var(--radius);background:var(--ground);max-width:100%;color:var(--ink);font-size:var(--text-ui);padding:10px 12px;line-height:1.4}.graph-console :is(input:not([type=checkbox]),select,textarea):not(.run-sidebar *):hover{border-color:var(--ink-2)}.graph-console :is(input:not([type=checkbox]),select,textarea):not(.run-sidebar *):focus-visible{border-color:var(--ink);outline-offset:0}.graph-console ::placeholder{color:var(--ink-2);opacity:1}.graph-console select:not(.run-sidebar *){--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;width:100%}:root[data-theme=dark] .graph-console select{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.graph-console :is(option,optgroup){color:var(--ink);background:var(--ground)}.graph-console .select-wrap{min-width:0;display:block;position:relative}.graph-console .select-wrap select{appearance:none;padding-right:40px}.graph-console .select-wrap:after{content:"";border-right:2px solid var(--ink-2);border-bottom:2px solid var(--ink-2);pointer-events:none;width:8px;height:8px;position:absolute;top:50%;right:16px;transform:translateY(-70%)rotate(45deg)}.graph-console .topbar{z-index:30;height:var(--bar);padding:0 var(--pad);border-bottom:1px solid var(--line);background:var(--ground);align-items:center;gap:24px;display:flex;position:sticky;top:0}.graph-console .topbar>.brand{flex:none}.graph-console .topbar-center{flex:1;align-items:baseline;gap:16px;min-width:0;display:flex}.graph-console .runtime-status{white-space:nowrap;font-weight:600}.graph-console .worker-status{color:var(--ink-2);font-family:var(--mono);font-size:var(--text-ledger);white-space:nowrap}.graph-console .worker-status b{color:var(--ink);font-weight:700}.graph-console .topbar-actions{flex:none;align-items:center;gap:12px;margin-left:auto;display:flex}.graph-console .console-nav{align-self:stretch;align-items:stretch;gap:4px;margin-right:8px;display:flex}.graph-console .console-nav a{color:var(--ink-2);transition:color var(--t-fast) var(--ease-out);align-items:center;padding:0 8px;font-weight:500;text-decoration:none;display:inline-flex;position:relative}.graph-console .console-nav a:hover,.graph-console .console-nav a[aria-current=page]{color:var(--ink)}.graph-console .console-nav a[aria-current=page]:after{content:"";background:var(--ink);height:2px;position:absolute;bottom:-1px;left:8px;right:8px}.graph-console .topbar .rail-toggle{width:var(--control);padding:0;display:none}.graph-console .avatar{width:var(--control);min-height:var(--control);border:1px solid var(--line);background:var(--ground);color:var(--ink);transition:border-color var(--t-fast) var(--ease-out), background-color var(--t-fast) var(--ease-out);border-radius:50%;justify-content:center;align-items:center;padding:0;text-decoration:none;display:inline-flex}.graph-console .avatar:hover{border-color:var(--ink-2);background:var(--ground-2)}.graph-console .avatar[aria-expanded=true]{border-color:var(--ink)}.graph-console .user-avatar{object-fit:cover;border-radius:50%;width:28px;height:28px;display:block;overflow:hidden}.graph-console .user-avatar svg{display:block}.graph-console .account-panel{z-index:40;width:min(440px,100vw);padding:20px var(--pad) 24px;border:1px solid var(--line);border-radius:0 0 var(--radius) var(--radius);background:var(--ground);border-top:0;position:absolute;top:100%;right:0}.graph-console .account-heading{border-bottom:1px solid var(--line);align-items:center;gap:8px;margin-bottom:16px;padding-bottom:16px;display:flex}.graph-console .account-heading>div{flex:1;gap:2px;min-width:0;display:grid}.graph-console .account-heading strong{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.graph-console .account-heading span{color:var(--ink-2);font-family:var(--mono);font-size:var(--text-meta);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.graph-console .account-close{width:var(--control);padding:0}.graph-console .account-panel h2{font-family:var(--display);font-size:var(--text-ui);letter-spacing:.06em;text-transform:uppercase;font-weight:400}.graph-console .account-panel>p{color:var(--ink-2);margin:4px 0 12px}.graph-console .account-panel code{font-size:var(--text-ledger);color:var(--ink)}.graph-console .key-create{gap:8px;display:flex}.graph-console .key-create input{flex:1;min-width:0}.graph-console .revealed-key{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.graph-console .revealed-key code{border:1px solid var(--line);border-radius:var(--radius);background:var(--ground-2);overflow-wrap:anywhere;width:100%;padding:10px 12px}.graph-console .key-loading{color:var(--ink-2);padding:12px 0}.graph-console .key-list{margin-top:12px;padding:0;list-style:none;display:grid}.graph-console .key-list li{border-top:1px solid var(--line-2);justify-content:space-between;align-items:center;gap:12px;padding:10px 0;display:flex}.graph-console .key-list li>div{gap:2px;min-width:0;display:grid}.graph-console .key-list strong{font-weight:600}.graph-console .key-list :is(code,em){color:var(--ink-2);font-size:var(--text-meta);font-style:normal}.graph-console .key-list code{font-family:var(--mono)}.graph-console .key-list button{min-height:36px;padding:0 12px}.graph-console .console-shell{grid-template-columns:var(--rail-width) minmax(0, 1fr);min-height:calc(100dvh - var(--bar));display:grid}.graph-console[data-rail=collapsed] .console-shell{grid-template-columns:var(--rail-collapsed) minmax(0, 1fr)}.graph-console .workspace-pane{background:var(--ground);grid-column:2;min-width:0}.graph-console .composer{max-width:1040px;padding:32px var(--pad) 56px calc(var(--pad) + 44px);position:relative}.graph-console .branch-point{top:0;left:var(--pad);width:var(--node-md);height:48px;position:absolute}.graph-console .branch-point .lane{top:0;bottom:0;left:calc(50% - var(--lane-width) / 2);width:var(--lane-width);background:var(--ink);position:absolute}.graph-console .branch-point .node{top:calc(100% - var(--node-md) / 2);position:absolute;left:0}.graph-console .composer-heading{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:8px 24px;display:grid}.graph-console .composer-title{flex-wrap:wrap;align-items:baseline;gap:4px 14px;display:flex}.graph-console .composer-heading h2{font-family:var(--display);letter-spacing:.01em;text-transform:uppercase;font-size:1.75rem;font-weight:400;line-height:1}.graph-console .branch-ref{color:var(--ink-2);font-family:var(--mono);font-size:var(--text-ledger)}.graph-console .composer-heading p{max-width:62ch;color:var(--ink-2);grid-column:1}.graph-console .composer-back{grid-area:1/2/span 2}.graph-console .dispatch-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 24px;margin-top:32px;display:grid}.graph-console .field{align-content:start;gap:6px;min-width:0;display:grid}.graph-console .field>:is(span,label):first-child{font-weight:600}.graph-console .dispatch-form[data-mode=real] .workspace-field{grid-area:2/2}.graph-console .dispatch-form[data-mode=demo] .workspace-field,.graph-console .connection-hint,.graph-console .task-field,.graph-console .composer-footer,.graph-console .dispatch-form .action-error{grid-column:1/-1}.graph-console .workspace-combobox{align-items:stretch;min-width:0;display:flex}.graph-console .workspace-combobox input{border-radius:var(--radius) 0 0 var(--radius);min-width:0;font-family:var(--mono);font-size:var(--text-ledger);border-right:0;flex:1}.graph-console .workspace-combobox button{width:var(--control);border-radius:0 var(--radius) var(--radius) 0;padding:0}.graph-console .task-field textarea{resize:vertical;width:100%;min-height:176px}.graph-console .field-hint{color:var(--ink-2);font-family:var(--mono);font-size:var(--text-meta);justify-self:end}.graph-console .connection-hint{border-top:1px solid var(--lane-line);border-bottom:1px solid var(--lane-line);background:var(--lane-fill);color:var(--ink);padding:10px 14px}.graph-console .connection-hint a{color:var(--ink);font-weight:600}.graph-console .composer-footer{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 24px;padding-top:20px;display:flex}.graph-console .composer-footer p{min-width:0;color:var(--ink-2)}.graph-console .dispatch-button{min-width:132px}.graph-console :is(.action-error,.run-error){padding:10px var(--pad);border-top:1px solid var(--del);border-bottom:1px solid var(--del);background:var(--del-fill);color:var(--del);overflow-wrap:anywhere}.graph-console .action-error{margin:0}.graph-console .dispatch-form .action-error,.graph-console .account-panel .action-error{margin-top:12px;padding-left:14px;padding-right:14px}.graph-console .run-error{gap:2px;display:grid}.graph-console .run-error strong{font-weight:600}.graph-console .run-workspace{padding-bottom:56px;display:grid}.graph-console .run-identity{min-height:40px;padding:10px var(--pad);border-bottom:1px solid var(--line);color:var(--ink-2);font-family:var(--mono);font-size:var(--text-ledger);flex-wrap:wrap;align-items:baseline;display:flex}.graph-console .run-identity>div{align-items:baseline;min-width:0;display:inline-flex}.graph-console .run-identity>div+div:before{content:"·";color:var(--ink-3);margin:0 10px}.graph-console .run-identity dd{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.graph-console .run-identity>div:first-child dd{color:var(--ink)}.graph-console .run-identity code{font:inherit}.graph-console .run-identity-workspace dd{overflow-wrap:anywhere;white-space:normal}.graph-console .run-heading{padding:20px var(--pad) 20px;gap:8px;display:grid}.graph-console .run-heading h2{overflow-wrap:anywhere;text-wrap:balance;max-width:72ch;font-size:1.25rem;line-height:1.35}.graph-console .run-task-details summary{cursor:pointer;min-height:32px;color:var(--ink-2);align-items:center;gap:6px;font-weight:500;list-style:none;display:inline-flex}.graph-console .run-task-details summary::-webkit-details-marker{display:none}.graph-console :is(.run-task-details,.run-context) summary>svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:14px;height:14px;transition:transform var(--t-fast) var(--ease-out);flex:none}.graph-console :is(.run-task-details,.run-context)[open] summary>svg{transform:rotate(90deg)}.graph-console .run-task-details summary span{font-family:var(--mono);font-size:var(--text-ledger)}.graph-console .run-task-details pre{border:1px solid var(--line);border-radius:var(--radius);background:var(--ground-2);max-height:16rem;font-size:var(--text-ledger);white-space:pre-wrap;overflow-wrap:anywhere;margin-top:8px;padding:12px 14px;line-height:1.6;overflow:auto}.graph-console .run-status-band{grid-template-columns:var(--node-lg) minmax(0, 1fr) auto;min-height:96px;padding:16px var(--pad);border-top:1px solid var(--line);border-bottom:1px solid var(--line);align-items:center;gap:20px;display:grid}.graph-console .run-status-copy{gap:4px;min-width:0;display:grid}.graph-console .run-status-band h3{font-family:var(--display);letter-spacing:.01em;text-transform:uppercase;text-wrap:balance;font-size:clamp(1.5rem,1rem + 1.4vw,2rem);font-weight:400;line-height:1}.graph-console .run-status-band p{overflow-wrap:anywhere;max-width:72ch}.graph-console .run-status-time{color:var(--ink-2);font-family:var(--mono);font-size:var(--text-ledger)}.graph-console .run-status-duration:before{content:"·";color:var(--ink-3);margin:0 8px}.graph-console .tone-active h3{color:var(--lane)}.graph-console .tone-complete h3{color:var(--add)}.graph-console :is(.tone-failed,.tone-stopped) h3{color:var(--del)}.graph-console .run-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.graph-console .run-graph{grid-template-columns:260px minmax(0,1fr);align-items:start;display:grid}.graph-console .stage-lane{--end:calc(var(--node-y) + var(--reached,0) * var(--stage-row));border-right:1px solid var(--line);position:relative}.graph-console .stage-lane .lane{left:calc(var(--pad) + var(--node-md) / 2 - var(--lane-width) / 2);width:var(--lane-width);background:var(--ink);position:absolute}.graph-console .stage-lane .lane-track{top:var(--node-y);height:calc(4 * var(--stage-row));background:var(--line)}.graph-console .stage-lane .lane-drawn-local{top:var(--node-y);height:calc(min(var(--end), var(--stage-row)) - var(--node-y))}.graph-console .stage-lane .lane-drawn-result{top:calc(4 * var(--stage-row));height:clamp(0px, var(--end) - 4 * var(--stage-row), var(--node-y))}.graph-console .lane-band{top:var(--stage-row);height:calc(3 * var(--stage-row));border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--lane-fill);position:absolute;left:0;right:0}.graph-console .stage-lane .lane-band .lane{height:clamp(0px, var(--end) - var(--stage-row), 3 * var(--stage-row));background:var(--lane-line);top:0}.graph-console .lane-band-label{color:var(--lane);font-family:var(--mono);font-size:var(--text-meta);white-space:nowrap;position:absolute;bottom:6px;right:12px}.graph-console .stage-list{z-index:1;margin:0;padding:0;list-style:none;position:relative}.graph-console .stage{grid-template-columns:var(--node-md) minmax(0, 1fr);height:var(--stage-row);padding:calc(var(--node-y) - var(--node-md) / 2) 12px 0 var(--pad);grid-template-rows:auto auto auto;align-content:start;column-gap:12px;display:grid}.graph-console .stage-node{grid-row:1/-1;align-self:start}.graph-console .stage-name{min-width:0;color:var(--ink-2);font-weight:600;line-height:20px}.graph-console .stage-fact{min-width:0;color:var(--ink-2);font-size:var(--text-ledger);text-overflow:ellipsis;white-space:nowrap;line-height:18px;overflow:hidden}.graph-console .stage-time{color:var(--ink-2);font-family:var(--mono);font-size:var(--text-meta);line-height:16px}.graph-console .stage:is([data-state=complete],[data-state=current],[data-state=stopped]) .stage-name{color:var(--ink)}.graph-console .stage[data-state=current] .stage-fact{color:var(--lane);font-weight:600}.graph-console .stage[data-state=stopped] .stage-fact{color:var(--del);font-weight:600}.graph-console .stage:last-child[data-state=complete] .stage-node{--node-size:var(--node-lg);margin:-4px 0 0 -4px}.graph-console .stage-lane[data-live=true] .stage:is([data-state=complete],[data-state=current]) .node{animation:node-land var(--t-base) var(--ease-out) both}@keyframes node-land{0%{opacity:0;transform:scale(.6)}}.graph-console .stage-lane[data-live=true] .stage[data-state=current] .stage-node:before,.graph-console .stage-lane[data-live=true] .stage[data-state=current] .stage-node:after{content:"";border:var(--lane-width) solid var(--node-color);pointer-events:none;border-radius:50%;position:absolute;inset:-6px}.graph-console .stage-lane[data-live=true] .stage[data-state=current] .stage-node:before{border-color:#0000;border-top-color:var(--node-color);border-right-color:var(--node-color);animation:1.4s linear infinite stage-orbit}.graph-console .stage-lane[data-live=true] .stage[data-state=current] .stage-node:after{animation:2.8s ease-in-out infinite stage-breathe}.graph-console .stage-lane[data-live=true] .stage[data-state=current] .stage-node:is(.is-queued,.is-wait):before{animation-duration:2.8s}@keyframes stage-orbit{to{transform:rotate(360deg)}}@keyframes stage-breathe{0%,to{opacity:.12;transform:scale(1)}50%{opacity:.3;transform:scale(1.2)}}.graph-console .run-views{min-width:0}.graph-console .run-view-nav{padding:0 var(--pad);border-bottom:1px solid var(--line);gap:4px;display:flex}.graph-console .run-view-nav button{min-height:var(--control);color:var(--ink-2);background:0 0;border:0;border-radius:0;padding:0 8px;position:relative}.graph-console .run-view-nav button:hover:not(:disabled){color:var(--ink);background:0 0}.graph-console .run-view-nav button[aria-pressed=true]{color:var(--ink)}.graph-console .run-view-nav button[aria-pressed=true]:after{content:"";background:var(--ink);height:2px;position:absolute;bottom:-1px;left:8px;right:8px}.graph-console .tab-count{color:var(--ink-2);font-family:var(--mono);font-size:var(--text-ledger);font-weight:400}.graph-console .run-body>div{min-width:0}.graph-console :is(.pane-title,.diff-pane-title){padding:16px var(--pad) 12px;justify-content:space-between;align-items:baseline;gap:16px;display:flex}.graph-console :is(.pane-title,.diff-pane-title) h3{font-family:var(--display);font-size:var(--text-ui);letter-spacing:.06em;text-transform:uppercase;font-weight:400}.graph-console :is(.pane-title,.diff-pane-title) p{color:var(--ink-2);font-size:var(--text-ledger);margin-top:2px}.graph-console :is(.pane-title,.diff-pane-title)>span{color:var(--ink-2);font-family:var(--mono);font-size:var(--text-ledger);flex:none}.graph-console .pane-live.is-live{color:var(--lane);font-weight:700}.graph-console :is(.pane-empty,.diff-empty,.diff-truncated){padding:16px var(--pad);color:var(--ink-2);display:block}.graph-console .event-toolbar{padding:0 var(--pad) 10px;color:var(--ink-2);font-family:var(--mono);font-size:var(--text-ledger);flex-wrap:wrap;align-items:center;gap:8px 16px;display:flex}.graph-console .event-follow{cursor:pointer;min-height:36px;font-family:var(--sans);align-items:center;gap:8px;margin-left:auto;display:inline-flex}.graph-console .event-follow input{width:16px;height:16px;accent-color:var(--ink);margin:0}.graph-console .event-toolbar button{min-height:36px;font-family:var(--sans);font-size:var(--text-ledger);padding:0 12px}.graph-console .event-list{overscroll-behavior:contain;border-top:1px solid var(--line);min-height:12rem;max-height:60dvh;font-family:var(--mono);font-size:var(--text-ledger);font-variant-numeric:tabular-nums;margin:0;padding:0;line-height:1.6;list-style:none;overflow:auto}.graph-console .event-item{padding:6px var(--pad);border-bottom:1px solid var(--line-2);color:var(--ink-2);grid-template-columns:4ch 11ch 20ch minmax(0,1fr);align-items:start;column-gap:16px;display:grid}.graph-console .event-item:last-child{color:var(--ink)}.graph-console .event-item.is-output{background:var(--ground-2)}.graph-console .event-seq{text-align:right}.graph-console .event-item>time{font-family:inherit}.graph-console .event-type{font:inherit;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.graph-console :is(.event-message,.event-preview){min-width:0;font:inherit;white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.graph-console .event-output-details summary{cursor:pointer;list-style:none}.graph-console .event-output-details summary::-webkit-details-marker{display:none}.graph-console .event-preview{display:block}.graph-console .event-expand-label{color:var(--ink);text-underline-offset:.18em;margin-top:4px;font-weight:600;text-decoration:underline;display:inline-block}.graph-console .event-output-details[open] .event-preview{display:none}.graph-console .event-output-details[open] .event-message{margin-top:6px}.graph-console .event-list[data-live=true] .event-item:last-child{animation:row-land var(--t-base) var(--ease-out) both}@keyframes row-land{0%{opacity:0;transform:translateY(4px)}}.graph-console .run-context{border-bottom:1px solid var(--line-2)}.graph-console .run-context summary{min-height:var(--control);padding:0 var(--pad);cursor:pointer;color:var(--ink-2);align-items:center;gap:6px;list-style:none;display:flex}.graph-console .run-context summary::-webkit-details-marker{display:none}.graph-console .run-context summary h3{font-size:var(--text-ui);font-weight:500}.graph-console .run-context dl{padding:4px var(--pad) 16px;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 16px;display:grid}.graph-console .run-context dl>div{min-width:0}.graph-console .run-context dt{color:var(--ink-2);font-size:var(--text-ledger)}.graph-console .run-context dd{overflow-wrap:anywhere;margin-top:2px}.graph-console .run-context :is(code,time){font-size:var(--text-ledger)}.graph-console .change-summary{padding:12px var(--pad);border-bottom:1px solid var(--line-2);font-family:var(--mono);font-size:var(--text-ledger);flex-wrap:wrap;align-items:baseline;gap:8px 16px;display:flex}.graph-console .change-summary strong{font-weight:700}.graph-console .additions,.graph-console .status-A{color:var(--add)}.graph-console .deletions,.graph-console .status-D{color:var(--del)}.graph-console .diff-split{border-top:1px solid var(--line);grid-template-columns:minmax(200px,30%) minmax(0,1fr);min-width:0;display:grid}.graph-console .diff-files{overscroll-behavior:contain;border-right:1px solid var(--line);min-width:0;max-height:60dvh;margin:0;padding:0;list-style:none;overflow:auto}.graph-console .diff-files button{grid-template-columns:var(--node-sm) 1ch minmax(0, 1fr) auto;width:100%;min-height:40px;padding:8px 12px 8px var(--pad);border:0;border-bottom:1px solid var(--line-2);color:var(--ink-2);text-align:left;background:0 0;border-radius:0;align-items:center;column-gap:8px;font-weight:400;display:grid}.graph-console .diff-files button:hover:not(:disabled){background:var(--ground-2);color:var(--ink)}.graph-console .diff-files button.selected{background:var(--ground-2);color:var(--ink);font-weight:600}.graph-console .diff-node svg{display:none}.graph-console .diff-status{font-family:var(--mono);font-size:var(--text-ledger);font-weight:600}.graph-console .diff-path{overflow-wrap:anywhere;min-width:0;font-family:var(--mono);font-size:var(--text-ledger);font-weight:inherit;line-height:1.5}.graph-console .diff-file-stats{font-family:var(--mono);font-size:var(--text-meta);gap:6px;font-weight:400;display:flex}.graph-console .diff-preview{min-width:0}.graph-console .diff-preview-title{min-height:40px;padding:8px var(--pad);border-bottom:1px solid var(--line-2);justify-content:space-between;align-items:center;gap:12px;display:flex}.graph-console .diff-preview-title h4{min-width:0;font-family:var(--mono);font-size:var(--text-ledger);overflow-wrap:anywhere;font-weight:600}.graph-console .diff-preview-title>span{color:var(--ink-2);font-family:var(--mono);font-size:var(--text-meta);flex:none}.graph-console .diff-hunks{overscroll-behavior:contain;scrollbar-gutter:stable;min-width:0;min-height:12rem;max-height:60dvh;overflow:auto}.graph-console .diff-hunk{width:max-content;min-width:100%;font-size:var(--text-ledger);margin:0;padding:8px 0;line-height:1.6}.graph-console .diff-hunk code{display:block}.graph-console .diff-line{min-height:1.6em;padding:0 var(--pad);white-space:pre;display:block}.graph-console .diff-line.meta{color:var(--ink-2);background:var(--ground-2)}.graph-console .diff-line.add{color:var(--add);background:var(--add-fill)}.graph-console .diff-line.del{color:var(--del);background:var(--del-fill)}.graph-console .diff-truncated{border-top:1px solid var(--line-2)}.graph-console .run-report-note{margin:0 var(--pad) 12px;border-top:1px solid var(--lane-line);border-bottom:1px solid var(--lane-line);background:var(--lane-fill);padding:10px 14px}.graph-console .run-report-final{max-width:calc(72ch + 2 * var(--pad));max-height:70dvh;padding:4px var(--pad) 8px;font-size:var(--text-body);line-height:1.6;overflow:auto}.graph-console .run-report-transcript{margin:12px var(--pad) 0;border-top:1px solid var(--line-2)}.graph-console .run-report-transcript summary{min-height:var(--control);cursor:pointer;color:var(--ink-2);align-items:center;gap:8px;font-weight:500;list-style:none;display:flex}.graph-console .run-report-transcript summary::-webkit-details-marker{display:none}.graph-console .run-report-transcript summary:before{content:"";width:6px;height:6px;transition:transform var(--t-fast) var(--ease-out);border-bottom:2px solid;border-right:2px solid;margin:0 4px 2px 2px;transform:rotate(-45deg)}.graph-console .run-report-transcript[open]>summary:before{margin-bottom:4px;transform:rotate(45deg)}.graph-console .run-report-transcript summary span{font-family:var(--mono);font-size:var(--text-ledger);margin-left:0}.graph-console .run-report-transcript pre{border:1px solid var(--line);border-radius:var(--radius);background:var(--ground-2);max-height:60dvh;font-size:var(--text-ledger);white-space:pre-wrap;overflow-wrap:anywhere;padding:12px 14px;line-height:1.6;overflow:auto}.graph-console .output-markdown{font-family:var(--sans)}.graph-console .output-text{font-family:var(--mono);font-size:var(--text-ledger);white-space:pre-wrap;overflow-wrap:anywhere}.graph-console .output-markdown>:first-child{margin-top:0}.graph-console .output-markdown>:last-child{margin-bottom:0}.graph-console .output-markdown :is(p,ul,ol,blockquote,table,.output-code){margin:0 0 12px}.graph-console .output-markdown :is(h1,h2,h3,h4,h5,h6){margin:24px 0 8px;font-weight:600;line-height:1.3}.graph-console .output-markdown h1{font-size:1.25rem}.graph-console .output-markdown h2{font-size:1.125rem}.graph-console .output-markdown :is(h3,h4,h5,h6){font-size:1rem}.graph-console .output-markdown :is(ul,ol){padding-left:22px}.graph-console .output-markdown li{margin:2px 0}.graph-console .output-markdown li>p{margin:0}.graph-console .output-markdown blockquote{border-left:1px solid var(--line);color:var(--ink-2);padding:0 14px}.graph-console .output-markdown a{color:var(--ink)}.graph-console .output-markdown hr{background:var(--line);border:0;height:1px;margin:16px 0}.graph-console .output-markdown table{border-collapse:collapse;font-variant-numeric:tabular-nums;max-width:100%;display:block;overflow-x:auto}.graph-console .output-markdown :is(th,td){border:1px solid var(--line);text-align:left;vertical-align:top;padding:6px 12px}.graph-console .output-markdown th{background:var(--ground-2)}.graph-console .output-markdown img{border:1px solid var(--line);max-width:100%}.graph-console .code-inline{border:1px solid var(--line);border-radius:var(--radius);background:var(--ground-2);overflow-wrap:anywhere;padding:1px 5px;font-size:.9em}.graph-console .output-code{border:1px solid var(--line);border-radius:var(--radius);background:var(--ground-2);font-size:var(--text-ledger);tab-size:2;padding:12px 14px;line-height:1.6;position:relative;overflow-x:auto}.graph-console .output-code[data-language]:before{color:var(--ink-2);font-family:var(--mono);font-size:var(--text-meta);content:attr(data-language);position:absolute;top:6px;right:10px}.graph-console .output-code code{white-space:pre;display:block}.graph-console .output-code .hljs{color:var(--ink)}.graph-console :is(.hljs-comment,.hljs-quote,.hljs-meta){color:var(--ink-2);font-style:italic}.graph-console :is(.hljs-keyword,.hljs-selector-tag,.hljs-built_in,.hljs-name,.hljs-tag,.hljs-doctag,.hljs-section){color:var(--lane);font-weight:600}.graph-console :is(.hljs-string,.hljs-addition,.hljs-regexp,.hljs-template-tag,.hljs-symbol,.hljs-bullet){color:var(--add)}.graph-console :is(.hljs-number,.hljs-literal,.hljs-attr,.hljs-attribute,.hljs-variable,.hljs-template-variable,.hljs-selector-attr,.hljs-selector-pseudo,.hljs-link){color:var(--ink)}.graph-console :is(.hljs-title,.hljs-title.function_,.hljs-title.class_,.hljs-type,.hljs-selector-class,.hljs-selector-id){color:var(--ink);font-weight:600}.graph-console .hljs-deletion{color:var(--del)}.graph-console .hljs-emphasis{font-style:italic}.graph-console .hljs-strong{font-weight:700}.graph-console .code-path{font-family:var(--mono);font-size:var(--text-ledger);color:var(--ink);overflow-wrap:anywhere}.graph-console .empty-workspace{min-height:320px;padding:40px var(--pad);align-content:center;justify-items:start;gap:12px;display:grid}.graph-console .empty-workspace h2{font-size:1.25rem}.graph-console .empty-workspace p{max-width:52ch;color:var(--ink-2)}.graph-console .toast{z-index:50;bottom:max(20px, env(safe-area-inset-bottom));border-radius:var(--radius);background:var(--ink);width:max-content;max-width:calc(100vw - 32px);color:var(--ground);visibility:hidden;overflow-wrap:anywhere;padding:12px 18px;font-weight:500;position:fixed;left:50%;transform:translate(-50%)}.graph-console .toast.visible{visibility:visible;animation:toast-land var(--t-base) var(--ease-out) both}@keyframes toast-land{0%{opacity:0;transform:translate(-50%,6px)}}@media (width<=1180px){.graph-console{--rail-width:280px}.graph-console .run-graph{grid-template-columns:224px minmax(0,1fr)}.graph-console .stage-fact{font-size:var(--text-meta)}}@media (width<=899px){.graph-console .console-shell,.graph-console[data-rail=collapsed] .console-shell{grid-template-columns:0 minmax(0,1fr)}.graph-console .topbar .rail-toggle{display:inline-flex}.graph-console[data-rail=collapsed] .run-sidebar{display:none}.graph-console .run-graph{grid-template-columns:minmax(0,1fr)}.graph-console .stage-lane{--end-x:calc((var(--reached,0) + .5) * 20%);border-right:0;border-bottom:1px solid var(--line)}.graph-console .stage-lane .lane{top:calc(12px + var(--node-md) / 2 - var(--lane-width) / 2);width:auto;height:var(--lane-width);left:auto}.graph-console .stage-lane .lane-track{width:80%;left:10%}.graph-console .stage-lane .lane-drawn-local{width:calc(min(var(--end-x), 20%) - 10%);left:10%}.graph-console .stage-lane .lane-drawn-result{width:clamp(0%, var(--end-x) - 80%, 10%);left:80%}.graph-console .lane-band{border-top:0;border-bottom:0;border-right:1px solid var(--line);border-left:1px solid var(--line);width:60%;height:auto;inset:0 auto 0 20%}.graph-console .stage-lane .lane-band .lane{top:calc(12px + var(--node-md) / 2 - var(--lane-width) / 2);width:clamp(0%, (var(--reached,0) - .5) * 33.3333%, 100%);height:var(--lane-width);left:0}.graph-console .lane-band-label{bottom:4px;left:50%;right:auto;transform:translate(-50%)}.graph-console .stage-list{grid-template-columns:repeat(5,minmax(0,1fr));padding-bottom:24px;display:grid}.graph-console .stage{grid-template-columns:minmax(0,1fr);grid-template-rows:var(--node-md) auto auto auto;text-align:center;justify-items:center;height:auto;padding:12px 6px 0}.graph-console .stage-node{grid-row:1}.graph-console .stage-name{font-size:var(--text-ledger);margin-top:8px}.graph-console .stage-fact{max-width:100%;font-size:var(--text-meta)}}@media (width<=699px){.graph-console .topbar-center{display:none}.graph-console .dispatch-form{grid-template-columns:minmax(0,1fr)}.graph-console .dispatch-form[data-mode=real] .workspace-field{grid-area:auto}.graph-console .composer-heading{grid-template-columns:minmax(0,1fr)}.graph-console .composer-back{grid-area:auto/1;justify-self:start}.graph-console .composer-footer{flex-direction:column;align-items:stretch}.graph-console .dispatch-button{width:100%}.graph-console .run-context dl{grid-template-columns:repeat(2,minmax(0,1fr))}.graph-console .diff-split{grid-template-columns:minmax(0,1fr)}.graph-console .diff-files{border-right:0;border-bottom:1px solid var(--line);max-height:12rem}}@media (width<=599px){.graph-console{--pad:16px}.graph-console .topbar{gap:12px}.graph-console .console-nav{margin-right:0}.graph-console .console-nav a{padding:0 6px}.graph-console .composer{padding-left:calc(var(--pad) + 36px)}.graph-console .composer-heading h2{font-size:1.5rem}.graph-console .run-status-band{grid-template-columns:var(--node-lg) minmax(0, 1fr);padding:16px var(--pad);gap:12px 16px}.graph-console .run-status-band .run-actions{grid-column:1/-1;justify-content:stretch}.graph-console .run-actions>*,.graph-console .run-view-nav button{flex:1}.graph-console .event-item{grid-template-columns:4ch 11ch 20ch minmax(22rem,1fr);min-width:44rem}.graph-console :is(.event-message,.event-preview){overflow-wrap:normal}.graph-console .stage-time{display:none}.graph-console .stage-fact{font-size:.6875rem}.graph-console .run-context dl{grid-template-columns:minmax(0,1fr)}.graph-console .account-panel{width:100vw;padding:16px var(--pad) 20px}.graph-console .key-create{flex-wrap:wrap}}@media (prefers-reduced-motion:reduce){.graph-console .stage-lane .lane,.graph-console button,.graph-console .console-nav a{transition:none}.graph-console .toast.visible,.graph-console .event-list[data-live=true] .event-item:last-child,.graph-console .stage-lane[data-live=true] .stage .node{animation:none}.graph-console .stage-lane[data-live=true] .stage[data-state=current] .stage-node:before,.graph-console .stage-lane[data-live=true] .stage[data-state=current] .stage-node:after{animation:none;transform:none}.graph-console .stage-lane[data-live=true] .stage[data-state=current] .stage-node:after{opacity:.2}}.connections-page{--rail-width:0px;--page-pad:24px}.connections-content{width:100%;min-width:0;padding-bottom:64px}.connections-page code{overflow-wrap:anywhere}.connections-page h1,.connections-page h2,.connections-page h3,.connections-page p,.connections-page ul,.connections-page ol{margin:0}.connections-heading{padding:32px var(--page-pad) 24px;gap:8px;display:grid}.connections-heading h1{font-family:var(--display);letter-spacing:.01em;text-transform:uppercase;font-size:1.75rem;font-weight:400;line-height:1.1}.connections-heading p{max-width:64ch;color:var(--ink-2);font-size:var(--text-ui)}.settings-section{border-top:1px solid var(--line)}.settings-section:last-child{border-bottom:1px solid var(--line)}.section-head{min-height:var(--control);padding:0 12px 0 var(--page-pad);border-bottom:1px solid var(--line-2);align-items:center;gap:12px;display:flex}.section-head h2{font-family:var(--display);font-size:var(--text-ui);letter-spacing:.06em;text-transform:uppercase;font-weight:400}.section-summary{min-width:0;color:var(--ink-2);text-overflow:ellipsis;white-space:nowrap;font-family:var(--mono);font-size:var(--text-meta);font-variant-numeric:tabular-nums;overflow:hidden}.connections-page button.section-add{white-space:nowrap;border-radius:var(--radius);min-height:36px;color:var(--ink-2);font-size:var(--text-ui);transition:background-color var(--t-fast) var(--ease-out), border-color var(--t-fast) var(--ease-out), color var(--t-fast) var(--ease-out);background:0 0;border:1px solid #0000;align-items:center;gap:6px;margin-left:auto;padding:0 10px 0 8px;font-weight:500;display:inline-flex}.connections-page button.section-add svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:16px;height:16px}.connections-page button.section-add:hover:not(:disabled){border-color:var(--line);color:var(--ink);background:var(--ground-2)}.section-empty{padding:20px var(--page-pad) 24px;color:var(--ink-2);font-size:var(--text-ui);gap:6px;display:grid}.section-empty strong{color:var(--ink);font-weight:600}.section-empty p{max-width:64ch}.section-empty b{color:var(--ink);font-weight:500}.section-empty .command-list{max-width:640px;margin-top:8px}.machine-list{padding:0;list-style:none}.machine{padding:12px var(--page-pad);border-bottom:1px solid var(--line-2);grid-template-columns:16px minmax(0,1fr) auto;align-items:start;gap:0 12px;display:grid}.machine:last-child{border-bottom:0}.machine-icon{fill:none;width:16px;height:16px;stroke:var(--ink-2);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;margin-top:3px}.machine-body{gap:4px;min-width:0;display:grid}.machine-name{font-family:var(--mono);font-size:var(--text-ui);overflow-wrap:anywhere;font-weight:600;line-height:1.4}.machine-sub{color:var(--ink-2);font-size:var(--text-ui);flex-wrap:wrap;align-items:center;gap:4px 8px;display:flex}.machine-state{color:var(--ink)}.machine-meta{font-family:var(--mono);font-size:var(--text-meta);font-variant-numeric:tabular-nums}.machine-recover{max-width:760px;margin-top:8px}.machine-recover p,.unpaired-head .machine-recover p{max-width:72ch;color:var(--ink-2);font-size:var(--text-ui)}.machine-side{justify-items:end;gap:6px;min-width:0;display:grid}.machine-id{color:var(--ink-3);font-family:var(--mono);font-size:var(--text-meta)}.remote-caps{flex-wrap:wrap;justify-content:flex-end;gap:6px;padding:0;list-style:none;display:flex}.remote-caps li{border:1px solid var(--line);border-radius:var(--radius);color:var(--ink-2);font-family:var(--mono);font-size:var(--text-meta);white-space:nowrap;padding:2px 8px}.connection-tabs{padding:0 var(--page-pad);border-bottom:1px solid var(--line-2);flex-wrap:wrap;gap:4px;display:flex}.connections-page .connection-tabs button{min-height:var(--control);color:var(--ink-2);font-family:var(--mono);font-size:var(--text-ledger);transition:color var(--t-fast) var(--ease-out);background:0 0;border:0;border-radius:0;align-items:center;gap:8px;padding:0 8px;font-weight:500;display:inline-flex;position:relative}.connections-page .connection-tabs button:hover:not(:disabled),.connections-page .connection-tabs button[aria-selected=true]{color:var(--ink);background:0 0;border-color:#0000}.connections-page .connection-tabs button[aria-selected=true]:after{content:"";background:var(--ink);height:2px;position:absolute;bottom:-1px;left:8px;right:8px}.connections-page .connection-tabs button:focus-visible{outline-offset:-2px}.connection-tabs .tab-count{color:var(--ink-3);font-size:var(--text-meta);font-variant-numeric:tabular-nums}.unpaired-head{grid-template-columns:var(--node-sm) auto minmax(0, 1fr);padding:12px var(--page-pad) 4px;align-items:center;gap:4px 8px;display:grid}.unpaired-head h3{font-family:var(--mono);font-size:var(--text-ui);font-weight:600}.unpaired-head>span{color:var(--ink-2);font-size:var(--text-ui)}.unpaired-head .machine-recover{grid-column:1/-1;margin-top:4px}.connection-ledger{padding:0;list-style:none}.connection{min-height:72px;padding:12px var(--page-pad);border-bottom:1px solid var(--line-2);font-size:var(--text-ui);grid-template-columns:minmax(12ch,1fr) minmax(0,2fr) auto;align-items:center;gap:16px;display:grid}.connection:last-child{border-bottom:0}.connection-identity,.connection-state{gap:4px;min-width:0;display:grid}.connection-name{color:var(--ink);font-family:var(--mono);font-size:var(--text-ledger);overflow-wrap:anywhere;flex-wrap:wrap;align-items:center;gap:8px;font-weight:600;display:flex}.connection-id{border:1px solid var(--line);border-radius:var(--radius);color:var(--ink-2);font-size:var(--text-meta);padding:1px 6px;font-weight:400}.connection-driver{color:var(--ink-2)}.connection-headline{color:var(--ink);font-weight:500}.connection-headline[data-tone=stopped],.connection-headline[data-tone=failed]{color:var(--del)}.connection-runs-count{color:var(--ink-2);font-family:var(--mono);font-size:var(--text-meta);font-variant-numeric:tabular-nums;font-weight:400}.connection-last-run{grid-template-columns:var(--node-sm) auto minmax(0, 1fr) auto;min-width:0;font-family:var(--mono);font-size:var(--text-ledger);font-variant-numeric:tabular-nums;align-items:center;gap:10px;display:grid}.connection-last-run.is-empty{color:var(--ink-3);display:block}.connection-run-status,.connection-last-run time{color:var(--ink-2);white-space:nowrap}.connection-last-run a{color:var(--ink);font-family:var(--sans);font-size:var(--text-ui);text-overflow:ellipsis;white-space:nowrap;text-decoration:none;overflow:hidden}.connection-last-run a:hover{text-decoration:underline}.connection-new-run{border:1px solid var(--line);border-radius:var(--radius);min-height:36px;color:var(--ink);font-family:var(--sans);font-size:var(--text-ui);white-space:nowrap;transition:background-color var(--t-fast) var(--ease-out), border-color var(--t-fast) var(--ease-out);align-items:center;padding:0 12px;font-weight:500;text-decoration:none;display:inline-flex}.connection-new-run:hover{border-color:var(--ink);background:var(--ground-2)}.remote-terminal{margin:0 var(--page-pad);border-top:1px solid var(--line-2)}.remote-terminal summary{min-height:var(--control);cursor:pointer;color:var(--ink-2);font-size:var(--text-ui);align-items:center;gap:8px;font-weight:500;list-style:none;display:flex}.remote-terminal summary::-webkit-details-marker{display:none}.remote-terminal summary:hover{color:var(--ink)}.remote-terminal summary:before{content:"";width:6px;height:6px;transition:transform var(--t-fast) var(--ease-out);border-bottom:2px solid;border-right:2px solid;margin:0 4px 2px 2px;transform:rotate(-45deg)}.remote-terminal[open]>summary:before{margin-bottom:4px;transform:rotate(45deg)}.remote-terminal-count{color:var(--ink-3);font-family:var(--mono);font-size:var(--text-meta);font-variant-numeric:tabular-nums;font-weight:400}.remote-terminal-body{padding:0 0 12px}.command-list{grid-template-columns:fit-content(26ch) minmax(0,1fr) auto;gap:8px 12px;display:grid}.command-list>p{grid-column:1/-1}.command-row{grid-column:1/-1;grid-template-columns:subgrid;align-items:center;display:grid}.command-row-label{color:var(--ink-2);font-size:var(--text-ui);overflow-wrap:anywhere}.command-row code{min-width:0;min-height:var(--control);border:1px solid var(--line);border-radius:var(--radius) 0 0 var(--radius);color:var(--ink);background:var(--ground-2);font-size:var(--text-ledger);white-space:pre-wrap;border-right:0;align-content:center;padding:8px 12px;display:block}.connections-page .command-row button{min-width:80px;min-height:var(--control);border:1px solid var(--line);border-radius:0 var(--radius) var(--radius) 0;color:var(--ink);background:var(--ground);font-size:var(--text-ui);transition:background-color var(--t-fast) var(--ease-out), border-color var(--t-fast) var(--ease-out);margin-left:-12px;padding:0 14px;font-weight:500}.connections-page .command-row button:hover:not(:disabled){border-color:var(--ink);background:var(--ground-2)}.graph-console .setup-dialog-body{gap:16px;padding-bottom:20px}.setup-dialog-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px;padding:0 24px;display:grid}.setup-field{font-size:var(--text-ui);gap:6px;display:grid}.setup-field>span:first-child{font-weight:600}.setup-field input,.setup-field select{width:100%;min-height:var(--control);border:1px solid var(--line);border-radius:var(--radius);color:var(--ink);background:var(--ground);font:inherit;font-family:var(--mono);font-size:var(--text-ledger);caret-color:var(--lane);transition:border-color var(--t-fast) var(--ease-out);padding:10px 12px}.setup-field input::placeholder{color:var(--ink-2);opacity:1}.setup-field input:hover,.setup-field select:hover{border-color:var(--ink-2)}.setup-field input:focus-visible,.setup-field select:focus-visible{border-color:var(--ink);outline-offset:0}.setup-select{display:block;position:relative}.setup-select select{appearance:none;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;padding-right:36px}@media (prefers-color-scheme:dark){.setup-select select{--lightningcss-light: ;--lightningcss-dark:initial}}.setup-select:after{content:"";border-right:2px solid var(--ink-2);border-bottom:2px solid var(--ink-2);pointer-events:none;width:7px;height:7px;position:absolute;top:calc(50% - 5px);right:14px;transform:rotate(45deg)}.setup-dialog-commands,.setup-dialog-note,.graph-console .setup-dialog-body .pull-description{padding:0 24px}.graph-console .setup-dialog-body .pull-description{padding-top:16px}.setup-dialog-note{color:var(--ink-2);font-size:var(--text-ui);padding:0 24px}.connections-loading{color:var(--ink-2);font-family:var(--mono);font-size:var(--text-ledger);display:grid}.connections-loading p{padding:20px var(--page-pad)}.connections-loading-block{border-top:1px solid var(--line-2);background:var(--ground-2);height:64px}@media (width<=960px){.machine{grid-template-columns:16px minmax(0,1fr)}.machine-side{grid-column:2;justify-items:start;margin-top:8px}.remote-caps{justify-content:flex-start}}@media (width<=720px){.connections-page{--page-pad:16px}.connections-heading{padding-top:24px}.command-list,.command-row{grid-template-columns:minmax(0,1fr) auto}.command-row{gap:4px 0}.command-row-label{grid-column:1/-1}.connections-page .command-row button{margin-left:0}.connection{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"identity new""state state";gap:8px 12px}.connection-identity{grid-area:identity}.connection-state{grid-area:state}.connection-new-run{grid-area:new}.setup-dialog-fields{grid-template-columns:minmax(0,1fr)}}@media (width<=640px){.connection-last-run{grid-template-columns:var(--node-sm) auto minmax(0, 1fr);grid-template-areas:"node status time""node title title";gap:2px 10px}.connection-last-run .node{grid-area:node;align-self:start;margin-top:4px}.connection-run-status{grid-area:status}.connection-last-run a{white-space:normal;grid-area:title}.connection-last-run time{grid-area:time}}@font-face{font-family:Hammersmith One;src:url(/assets/hammersmith-one-regular-CMWoq89x.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Commit Mono;src:url(/assets/commit-mono-regular-Iz5dGFQd.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Commit Mono;src:url(/assets/commit-mono-bold-K9zZQyXV.woff2)format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Commit Mono;src:url(/assets/commit-mono-italic-DhBTRy9R.woff2)format("woff2");font-weight:400;font-style:italic;font-display:swap}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ground:#fff;--ground-2:#f6f8fa;--ground-3:#eef1f4;--ink:#1f2328;--ink-2:#59636e;--ink-3:#6e7781;--line:#d1d9e0;--line-2:#e6eaee;--lane:#9a6700;--lane-line:#bf8700;--lane-fill:#fff8c5;--lane-fill-2:#fae17d;--add:#1a7f37;--add-fill:#dafbe1;--del:#cf222e;--del-fill:#ffebe9;--state-queued:var(--ink-3);--state-wait:var(--lane);--state-run:var(--lane);--state-done:var(--add);--state-stop:var(--del);--focus:var(--ink);--selection:var(--lane-fill);--overlay:#1f23288c;--display:"Hammersmith One", "Gill Sans", "Gill Sans MT", "Trebuchet MS", sans-serif;--sans:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif;--mono:"Commit Mono", ui-monospace, SFMono-Regular, "Cascadia Mono", Menlo, Consolas, monospace;--text-body:1rem;--text-ui:.875rem;--text-ledger:.8125rem;--text-meta:.75rem;--radius:4px;--lane-width:2px;--node-sm:12px;--node-md:20px;--node-lg:28px;--control:44px;--bar:56px;--ease-out:cubic-bezier(.16, 1, .3, 1);--t-fast:.12s;--t-base:.2s}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ground:#0d1117;--ground-2:#161b22;--ground-3:#1c2129;--ink:#e6edf3;--ink-2:#9198a1;--ink-3:#7d8590;--line:#30363d;--line-2:#21262d;--lane:#e3b341;--lane-line:#d29922;--lane-fill:#2a2410;--lane-fill-2:#4a3d12;--add:#3fb950;--add-fill:#12261e;--del:#f85149;--del-fill:#2d1416;--focus:var(--ink);--selection:var(--lane-fill-2);--overlay:#010409b3}*{box-sizing:border-box}html,body,#root{min-height:100%}html{scroll-behavior:smooth}body{background:var(--ground);color:var(--ink);font-family:var(--sans);font-size:var(--text-body);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;line-height:1.5}body,button,input,select,textarea{font-family:var(--sans)}button,input,select,textarea,a{font:inherit}button,a{color:inherit}button,input,select,textarea{border-radius:var(--radius)}button{cursor:pointer}button:disabled{cursor:not-allowed}code,kbd,pre,samp,.mono{font-family:var(--mono);font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}.tnum{font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}::selection{background:var(--selection);color:var(--ink)}input,textarea{caret-color:var(--lane)}:focus-visible{outline:2px solid var(--focus);outline-offset:2px}a{text-underline-offset:.18em;text-decoration-thickness:1px}[hidden]{display:none!important}.visually-hidden{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:100;background:var(--ink);color:var(--ground);border-radius:var(--radius);font-size:var(--text-ui);padding:.5rem .75rem;font-weight:600;text-decoration:none;position:fixed;top:8px;left:8px;transform:translateY(-200%)}.skip-link:focus{transform:translateY(0)}.brand{color:var(--ink);font-family:var(--display);letter-spacing:-.01em;align-items:baseline;gap:0;font-size:1.25rem;line-height:1;text-decoration:none;display:inline-flex}.brand-mark{color:var(--lane)}.brand-name,.brand-word{color:inherit}.brand-role{font-family:var(--mono);font-size:var(--text-meta);color:var(--ink-2)}.node{--node-size:var(--node-md);--node-color:var(--state-queued);width:var(--node-size);height:var(--node-size);border:var(--lane-width) solid var(--node-color);background:var(--ground);color:var(--ground);border-radius:50%;flex:none;place-items:center;display:inline-grid;position:relative}.node svg{fill:none;stroke:currentColor;stroke-width:2.4px;stroke-linecap:round;stroke-linejoin:round;width:62%;height:62%;display:block}.node.is-queued{--node-color:var(--state-queued)}.node.is-wait{--node-color:var(--state-wait);border-style:dashed}.node.is-run{--node-color:var(--state-run);background:var(--node-color)}.node.is-run:after{content:"";border:var(--lane-width) solid var(--node-color);opacity:.35;animation:node-pulse 2s var(--ease-out) infinite;border-radius:50%;position:absolute;inset:-6px}.node.is-done{--node-color:var(--state-done);background:var(--node-color)}.node.is-stop{--node-color:var(--state-stop);background:var(--node-color)}.node.is-cancel{--node-color:var(--state-stop);color:var(--node-color)}.node.is-sm{--node-size:var(--node-sm)}.node.is-lg{--node-size:var(--node-lg)}@keyframes node-pulse{0%{opacity:.55;transform:scale(.7)}to{opacity:0;transform:scale(1.25)}}.theme-toggle{min-height:var(--control);border:1px solid var(--line);border-radius:var(--radius);background:var(--ground);color:var(--ink-2);font-family:var(--mono);font-size:var(--text-meta);letter-spacing:.02em;text-transform:uppercase;align-items:center;gap:.5rem;padding:0 .75rem;display:inline-flex}.theme-toggle:hover{color:var(--ink);border-color:var(--ink-2)}.theme-toggle-compact{padding:0 .6rem}.theme-toggle-indicator{border:1px solid;border-radius:999px;width:22px;height:12px;position:relative}.theme-toggle-indicator:after{content:"";width:8px;height:8px;transition:transform var(--t-base) var(--ease-out);background:currentColor;border-radius:50%;position:absolute;top:1px;left:1px}:root[data-theme=dark] .theme-toggle-indicator:after{transform:translate(10px)}*{scrollbar-width:thin;scrollbar-color:var(--line) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--line);border:3px solid var(--ground);border-radius:999px}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}.node.is-run:after{opacity:.35;animation:none;transform:none}}:root{--gutter:clamp(1.25rem, 3.4vw, 3rem);--measure:62ch;--spine:48px}.site-header{z-index:20;min-height:var(--bar);padding:0 var(--gutter);background:var(--ground);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:1rem;display:flex;position:sticky;top:0}.site-header .brand{gap:.6rem}.site-header .brand-role{margin-left:.4rem}.site-nav{align-items:center;gap:.25rem;display:flex}.site-nav a{min-height:var(--control);border-radius:var(--radius);color:var(--ink-2);font-size:var(--text-ui);align-items:center;padding:0 .75rem;font-weight:500;text-decoration:none;display:inline-flex}.site-nav a:hover{color:var(--ink);background:var(--ground-2)}.site-nav .nav-console{background:var(--ink);color:var(--ground);margin-left:.5rem;font-weight:600}.site-nav .nav-console:hover{background:var(--ink);color:var(--ground);opacity:.92}.button{border:1px solid var(--ink);border-radius:var(--radius);background:var(--ink);min-height:48px;color:var(--ground);font-size:var(--text-ui);transition:background-color var(--t-fast) var(--ease-out), color var(--t-fast) var(--ease-out), border-color var(--t-fast) var(--ease-out);justify-content:center;align-items:center;gap:.5rem;padding:0 1.1rem;font-weight:600;text-decoration:none;display:inline-flex}.button:hover{opacity:.92}.button-secondary{background:var(--ground);color:var(--ink);border-color:var(--line)}.button-secondary:hover{opacity:1;border-color:var(--ink-2);background:var(--ground-2)}.text-link{min-height:var(--control);color:var(--ink);font-size:var(--text-ui);text-decoration:underline;-webkit-text-decoration-color:var(--line);text-decoration-color:var(--line);align-items:center;font-weight:500;display:inline-flex}.text-link:hover{-webkit-text-decoration-color:var(--ink);text-decoration-color:var(--ink)}.hero{min-height:calc(100vh - var(--bar));grid-template-rows:auto auto;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);align-items:center;gap:clamp(2rem,4vw,4rem) 0;padding:clamp(2rem,5vh,4rem) 0 0;display:grid}.hero-copy{max-width:46rem;padding:0 var(--gutter);align-content:start;gap:1rem;display:grid}.hero>.graph{grid-column:1/-1}.hero-animation{min-width:0;margin:0 var(--gutter) 0 0;overflow:hidden}.hero-animation-stage{aspect-ratio:400/257;position:relative}.hero-animation-stage img,.hero-animation-stage video{object-fit:contain;width:100%;height:100%;display:block}.hero-animation-stage video{position:absolute;inset:0}.hero h1{font-family:var(--display);letter-spacing:-.01em;text-transform:uppercase;text-wrap:balance;margin:0;font-size:clamp(2.4rem,4.1vw,3.4rem);font-weight:400;line-height:.98}.hero h1 em{color:var(--lane);font-style:normal}.hero-lede{max-width:var(--measure);color:var(--ink-2);margin:0;font-size:1.0625rem;line-height:1.55}.hero-lede strong{color:var(--ink);font-weight:600}.install-command{border:1px solid var(--line);border-radius:var(--radius);background:var(--ground-2);gap:.75rem;padding:1rem;display:grid}.install-steps{gap:.6rem;margin:0;padding:0;list-style:none;display:grid}.install-steps li{gap:.2rem;display:grid}.terminal-label{font-family:var(--mono);font-size:var(--text-meta);color:var(--ink-2)}.install-steps code{font-size:var(--text-ledger);color:var(--ink);overflow-wrap:anywhere}.install-steps code:before{content:"$ ";color:var(--ink-3)}.install-actions{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.install-actions button{min-height:var(--control);border:1px solid var(--ink);border-radius:var(--radius);background:var(--ink);color:var(--ground);font-size:var(--text-ui);padding:0 1rem;font-weight:600}.install-actions button:hover{opacity:.92}.install-feedback{font-size:var(--text-ui);color:var(--ink-2)}.hero-actions{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.runtime-readout{font-family:var(--mono);font-size:var(--text-meta);color:var(--ink-2);align-items:center;gap:.5rem;display:inline-flex}.graph{--g-band-top:10%;--g-band-h:30%;border-top:1px solid var(--line);border-bottom:1px solid var(--line);height:clamp(300px,42vh,440px);margin:0;position:relative;overflow:hidden}.graph-band{top:var(--g-band-top);height:var(--g-band-h);background:var(--lane-fill);border-top:1px solid var(--line);border-bottom:1px solid var(--line);position:absolute;left:0;right:0}.graph-band-label{left:var(--gutter);top:calc(var(--g-band-top) + 8px);font-family:var(--mono);font-size:var(--text-meta);color:var(--lane);white-space:nowrap;position:absolute}.graph-svg{pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.graph-svg path{fill:none;stroke-width:var(--lane-width);stroke-linecap:round}.graph-svg .g-main{stroke:var(--ink)}.graph-svg .g-branch{stroke:var(--lane-line);stroke-dasharray:1;stroke-dashoffset:1px;transition:stroke-dashoffset .9s var(--ease-out)}.graph[data-drawn=true] .graph-svg .g-branch{stroke-dashoffset:0}.graph-nodes{margin:0;padding:0;list-style:none;position:absolute;inset:0}.g-node{--x:.5;--y:60%;left:calc(var(--x) * 100%);top:var(--y);justify-items:center;width:0;display:grid;position:absolute;transform:translate(-50%,-50%)}.g-node .node{opacity:0;transition:opacity var(--t-base) var(--ease-out), transform .32s var(--ease-out), background-color var(--t-base) var(--ease-out), border-color var(--t-base) var(--ease-out);transform:scale(.5)}.g-node.is-landed .node{opacity:1;transform:none}.g-node .g-label,.g-node .g-meta{white-space:nowrap;text-align:center;opacity:0;transition:opacity var(--t-base) var(--ease-out) .12s;position:absolute;left:50%;transform:translate(-50%)}.g-node.is-landed .g-label,.g-node.is-landed .g-meta{opacity:1}.g-node .g-label{font-size:var(--text-ui);color:var(--ink);font-weight:600;bottom:calc(50% + 18px)}.g-node .g-meta{font-family:var(--mono);font-size:var(--text-meta);color:var(--ink-2);gap:.1rem;display:grid;top:calc(50% + 18px)}.g-node .g-meta time{color:var(--ink)}.g-node.is-main .g-label{top:calc(50% + 14px);bottom:auto}.g-node.is-main .g-meta{display:none}.g-node.is-merge .g-label,.g-node.is-merge .g-meta{text-align:right;left:auto;right:-10px;transform:none}.g-node.is-merge .g-label{bottom:calc(50% + 22px)}.g-node.is-merge .g-meta{top:calc(50% + 22px)}.g-node.is-merge .g-meta b{color:var(--ink);font-weight:700}.g-node.is-merge .g-meta .add{color:var(--add)}.g-node.is-merge .g-meta .del{color:var(--del)}.graph-tag{right:var(--gutter);top:calc(var(--g-band-top) + 8px);font-family:var(--mono);font-size:var(--text-meta);color:var(--lane);position:absolute}.dispatch{width:100%;padding:1rem 1.25rem 1.25rem calc(1.25rem + var(--node-md) + .75rem);border:1px solid var(--line);border-radius:var(--radius);gap:.75rem;display:grid;position:relative}.dispatch:before{content:"";top:0;bottom:0;left:calc(1.25rem + var(--node-md) / 2 - var(--lane-width) / 2);width:var(--lane-width);background:var(--ink);position:absolute}.dispatch>.node{position:absolute;top:50%;left:1.25rem;transform:translateY(-50%)}.harness-switcher{border:0;flex-wrap:wrap;align-items:center;gap:.25rem;margin:0;padding:0;display:flex}.harness-switcher legend{float:left;font-family:var(--mono);font-size:var(--text-meta);color:var(--ink-2);margin-right:.5rem;padding:0}.harness{border:1px solid var(--line);border-radius:var(--radius);background:var(--ground);min-height:36px;color:var(--ink-2);font-size:var(--text-meta);padding:0 .7rem;font-weight:600}.harness:hover{color:var(--ink);border-color:var(--ink-2)}.harness.active{background:var(--ink);border-color:var(--ink);color:var(--ground)}.dispatch-command{font-family:var(--mono);font-size:var(--text-ledger);grid-template-columns:auto 1fr;align-items:baseline;column-gap:.5rem;display:grid}.command-prompt{color:var(--lane)}.dispatch-command code{color:var(--ink);overflow-wrap:anywhere}.dispatch-command small{font-size:var(--text-meta);color:var(--ink-2);grid-column:2}.graph-list{display:none}.spine{padding:0 var(--gutter) 0 calc(var(--gutter) + var(--spine));position:relative}.spine:before{content:"";top:0;bottom:0;left:calc(var(--gutter) + 9px);width:var(--lane-width);background:var(--ink);position:absolute}.spine-section{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:2rem clamp(2rem,5vw,5rem);padding:clamp(3rem,6vw,5.5rem) 0;display:grid;position:relative}.spine-section>.node{left:calc(-1 * var(--spine));position:absolute;top:calc(clamp(3rem,6vw,5.5rem) + .45em)}.spine-section h2{font-family:var(--display);letter-spacing:-.01em;text-transform:uppercase;text-wrap:balance;margin:0;font-size:clamp(1.75rem,3vw,2.5rem);font-weight:400;line-height:1.05}.spine-section h2 code{font-family:var(--mono);text-transform:none;font-size:.9em}.section-intro p,.runtime-heading p,.manifest-note{max-width:var(--measure);color:var(--ink-2);margin:1rem 0 0;line-height:1.6}.manifest-note a{color:var(--ink)}.manifest-list{border-top:1px solid var(--line);margin:0;padding:0;list-style:none;display:grid}.manifest-row{border-bottom:1px solid var(--line);font-size:var(--text-ui);grid-template-columns:minmax(0,1.1fr) minmax(0,1.4fr) auto;align-items:baseline;gap:1rem;padding:.85rem 0;display:grid}.manifest-row span{color:var(--ink);font-weight:500}.manifest-row code{font-size:var(--text-ledger);color:var(--ink)}.manifest-row i{font-style:normal;font-family:var(--mono);font-size:var(--text-meta);color:var(--ink-2);white-space:nowrap}.manifest-row.manifest-open{background:var(--ground-2);margin:0 -.75rem;padding-left:.75rem;padding-right:.75rem}.route-line{border-top:1px solid var(--line);margin:0;padding:0;display:grid}.route-step{border-bottom:1px solid var(--line);grid-template-columns:4.5rem minmax(0,1fr);gap:1rem;padding:1.25rem 0;display:grid}.step-code{font-family:var(--mono);font-size:var(--text-meta);color:var(--lane);padding-top:.3rem}.route-step h3{margin:0 0 .35rem;font-size:1.0625rem;font-weight:600}.route-step p{max-width:var(--measure);color:var(--ink-2);margin:0;line-height:1.6}.runtime-spec{border-top:1px solid var(--line);border-left:1px solid var(--line);grid-template-columns:repeat(4,minmax(0,1fr));margin:0;display:grid}.runtime-spec>div{border-right:1px solid var(--line);border-bottom:1px solid var(--line);gap:.25rem;padding:1.25rem 1.25rem 1.25rem 1rem;display:grid}.runtime-spec dt{font-family:var(--mono);font-size:var(--text-meta);color:var(--ink-2)}.runtime-spec dd{font-family:var(--display);text-transform:uppercase;margin:0;font-size:1.5rem;line-height:1.1}.runtime-spec span{font-size:var(--text-ui);color:var(--ink-2)}.final-cta{border-bottom:0;grid-template-columns:minmax(0,1fr)}.final-cta>.node{--node-size:var(--node-lg);left:calc(-1 * var(--spine) - 4px)}.final-cta:after{content:"";left:calc(-1 * var(--spine) + 8px);top:calc(clamp(3rem, 6vw, 5.5rem) + .45em + var(--node-lg));background:var(--ground);width:4px;position:absolute;bottom:0}.final-note{max-width:var(--measure);color:var(--ink-2);margin:1rem 0 1.5rem;line-height:1.6}.final-note code{color:var(--ink);font-size:.9em}.site-footer{padding:1.5rem var(--gutter);border-top:1px solid var(--line);font-size:var(--text-ui);color:var(--ink-2);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.site-footer p{margin:0}.footer-nav{gap:.25rem;display:flex}.footer-nav a{min-height:var(--control);color:var(--ink-2);align-items:center;padding:0 .6rem;text-decoration:none;display:inline-flex}.footer-nav a:hover{color:var(--ink)}@media (width<=1100px){.site-nav .nav-secondary{display:none}.spine-section,.hero{grid-template-columns:minmax(0,1fr)}.hero-animation{width:min(100% - 2 * var(--gutter), 52rem);margin:0 auto}}@media (width<=820px){:root{--spine:32px}.site-header{flex-wrap:wrap;padding-top:.5rem;padding-bottom:.5rem}.site-header .brand-role{display:none}.site-nav{flex:100%;justify-content:flex-start}.hero{grid-template-rows:auto auto;gap:1.75rem;min-height:0}.hero h1{font-size:clamp(2.4rem,11.5vw,3.4rem)}.graph{height:auto}.graph-svg,.graph-band,.graph-nodes,.graph-band-label,.graph>.graph-tag{display:none}.graph-list{padding:0 var(--gutter);margin:0;list-style:none;display:grid}.graph-list li{grid-template-columns:var(--spine) minmax(0, 1fr);align-items:start;column-gap:.75rem;padding:.85rem 0;display:grid;position:relative}.graph-list li:before{content:"";width:var(--lane-width);background:var(--lane-line);position:absolute;top:0;bottom:0;left:9px}.graph-list li.is-main:before{background:var(--ink)}.graph-list li.is-main:first-child:before{top:50%}.graph-list li.is-merge:before{background:var(--ink);bottom:50%}.graph-list li.in-band{background:var(--lane-fill);margin:0 calc(-1 * var(--gutter));padding-left:var(--gutter);padding-right:var(--gutter)}.graph-list li.in-band:before{left:calc(var(--gutter) + 9px)}.graph-list .node{z-index:1;margin-top:.1rem;position:relative}.graph-list .g-label{font-size:var(--text-ui);font-weight:600}.graph-list .g-meta{font-family:var(--mono);font-size:var(--text-meta);color:var(--ink-2);flex-wrap:wrap;gap:.75rem;display:flex}.graph-list .g-meta time{color:var(--ink)}.graph-list .g-meta .add{color:var(--add)}.graph-list .g-meta .del{color:var(--del)}.graph-list .graph-tag{padding:.5rem 0 1rem;display:block}.runtime-spec{grid-template-columns:minmax(0,1fr)}.manifest-row{grid-template-columns:minmax(0,1fr);gap:.25rem}}@media (width<=520px){.site-nav a{padding:0 .5rem}.hero-actions,.install-actions{flex-direction:column;align-items:stretch}.hero-actions .button,.install-actions button{width:100%}.harness-switcher{flex-wrap:wrap}}
