:root{--bg: #0a0c10;--s1: #11141a;--s2: #171b23;--s3: #1f242e;--s4: #272d39;--b: #222833;--b2: #313a47;--b3: #3f4a5a;--tx: #e7eaf0;--mu: #98a1b0;--dim: #6a7382;--faint: #4a525e;--run: #4bb8e8;--run-bg: #0f2a38;--run-br: #245a75;--ok: #4ec98b;--ok-bg: #10281d;--ok-br: #1c3a2c;--fail: #f0565d;--fail-bg: #2c1216;--fail-br: #4a1c22;--att: #f2a93b;--att-bg: #2c2010;--att-br: #4a3a17;--blk: #a98bf0;--blk-bg: #1f1a2e;--blk-br: #3a2f55;--que: #8590a3;--que-bg: #1a1e26;--que-br: var(--b2);--mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;--sans: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--row-h: 42px;--row-h-run: 54px;--sbDisp: flex;--barDisp: none;--mainMin: 1150px;--padT: 16px;--padX: 20px;--padB1: 40px;--padB2: 60px;--thDisp: grid;--rowGap: 0;--rowAlign: center;--rowPadY: 0px;--edgeVis: visible;--edgeIn: 0 0 0 0;--gFleet: 26px 26px 3px minmax(0, 1fr) minmax(190px, .9fr) 178px 210px 270px;--cUrl: auto;--c4: auto;--c56: auto;--gAg: 26px 1fr auto;--agMetaCol: auto;--gInt: 3px 336px 150px 272px 1fr 210px;--gapInt: 10px;--iRest: auto;--iState: auto;--iPadL: 0;--gHist: 130px 176px 1fr 82px 96px 150px 104px;--hOut: auto;--hAux: block;--gRun: 22px 1fr 90px 66px 18px;--gRunStep: 34px 1fr 74px 60px 18px;--runAux: block;--gLog: 58px 30px 1fr;--logGap: 10px;--logTextCol: auto;--gFind: 54px 200px 1fr;--findCol: auto;--gAudit: 132px 190px minmax(0, 1fr);--audWhat: auto;--gDeploy: 380px 1fr;--depListOrd: 0;--gDep: 200px 276px minmax(0, 1fr);--depTag: auto;--g2: 1fr 1fr;--gAgents: 1fr 340px;--gPkg: 150px 130px minmax(0, 1fr);--pkgNote: auto;--gCommit: 64px 78px minmax(0, 1fr) 170px;--commitWide: auto;--gVer: 120px 130px 1fr 260px;--gMach: 1fr 190px 132px 84px 90px 152px;--gUser: minmax(0, 2fr) 74px minmax(0, 3fr) 134px 154px;--gDev: minmax(0, 2fr) 210px 44px;--sqlEd2: minmax(0, 1fr) minmax(0, 1fr);--sqlTiles: repeat(auto-fill, minmax(230px, 1fr));--sqlRes: 14px 8px minmax(120px, 210px) 160px minmax(0, 150px) minmax(0, 190px) 52px minmax(0, 1fr);--sqlApp: block;--sqlDbCol: flex;--sqlDbSub: none;--sqlNow: minmax(130px, 210px) minmax(0, 1fr) minmax(100px, 200px) 70px;--sqlRoute: block;--sqlSug: minmax(0, 1fr) 150px 100px 28px;--sqlBtnFlex: none;--sqlHistDir: row;--sqlKbd: inline;--gSrv: minmax(0, 1.2fr) 150px 80px minmax(0, 1fr) 110px;--gProp: 170px minmax(0, 1fr);--gContact: minmax(0, 1fr) minmax(0, 1.2fr) 150px 70px;--uName: 1;--uRole: 2;--uBy: 3;--uSeen: 4;--uAct: 5;--uCtlRow: 1;--uSeenRow: 1;--uByRow: 1;--uSeenAlign: right;--wideMin: auto;--wideOv: hidden;--ctlH: 34px;--searchW: 460px;--attDir: row;--attActW: 210px;--crumbDisp: inline;--barPadX: 16px;--dagDir: row;--dagAlign: center;--dagArrowPad: 0 6px;--dagArrowRot: none;--runbarDir: row;--runbarAlign: center;--runbarGap: 12px}@media(max-width:1200px){:root{--sbDisp: none;--barDisp: block;--mainMin: 0;--padT: 14px;--padX: 16px;--padB1: 96px;--padB2: 96px;--thDisp: none;--rowGap: 5px;--rowAlign: start;--rowPadY: 9px;--edgeVis: hidden;--edgeIn: 4px 0 0 0;--gFleet: 26px 22px 4px minmax(0, 1fr) 168px;--cUrl: 4 / span 2;--rUrl: 2;--c56: 4 / span 2;--gAg: 26px minmax(0, 1fr);--agMetaCol: 2;--gInt: 4px minmax(0, 1fr) auto;--gapInt: var(--rowGap);--iRest: 2 / span 2;--iPadL: 12px;--gHist: auto minmax(0, 1fr);--hOut: 1 / -1;--hAux: none;--gRun: 20px minmax(0, 1fr) auto 14px;--gRunStep: 28px minmax(0, 1fr) auto 14px;--runAux: none;--gLog: 58px 24px minmax(0, 1fr);--gFind: 50px minmax(0, 1fr);--findCol: 2;--gAudit: auto minmax(0, 1fr);--audWhat: 1 / -1;--gDeploy: 300px minmax(0, 1fr);--gDep: minmax(0, 1fr) 260px;--depTag: 1 / -1;--gUser: auto minmax(0, 1fr) auto;--gDev: minmax(0, 1fr) auto 44px;--uName: 1 / -1;--uRole: 1;--uBy: 1 / -1;--uSeen: 2;--uAct: 3;--uCtlRow: 2;--uSeenRow: 2;--uByRow: 3;--uSeenAlign: left;--g2: minmax(0, 1fr) minmax(0, 1fr);--gAgents: minmax(0, 1fr);--wideMin: 970px;--wideOv: auto;--searchW: 100%;--rowHv: auto;--runHv: auto;--histHv: auto;--logHv: 340px;--logPadL: 16px}}@media(max-width:767px){:root{--padT: 12px;--padX: 12px;--gFleet: 26px 20px 4px minmax(0, 1fr);--cUrl: 4;--c4: 4;--c56: 4;--gInt: 4px minmax(0, 1fr);--iRest: 2;--iState: 2;--gUser: auto minmax(0, 1fr);--gDev: minmax(0, 1fr) auto 44px;--gSrv: minmax(0, 1fr) 70px;--gProp: minmax(0, 1fr);--gContact: minmax(0, 1fr) 60px;--uAct: 2;--uSeen: 1 / -1;--uSeenRow: 3;--uByRow: 4;--gDeploy: minmax(0, 1fr);--depListOrd: -1;--gDep: minmax(0, 1fr);--depTag: auto;--gPkg: minmax(0, 1fr) auto;--pkgNote: 1 / -1;--gCommit: 64px minmax(0, 1fr);--commitWide: 1 / -1;--g2: minmax(0, 1fr);--attDir: column;--attActW: 100%;--gLog: auto auto;--logGap: 7px;--logTextCol: 1 / -1;--logFont: 11.5px;--logHv: 280px;--logPadL: 12px;--logPadX: 12px;--crumbDisp: none;--barPadX: 12px;--dagDir: column;--dagAlign: stretch;--dagArrowPad: 3px 0;--dagArrowRot: rotate(90deg);--runbarDir: column;--runbarAlign: stretch;--runbarGap: 9px;--sqlEd2: minmax(0, 1fr);--sqlTiles: minmax(0, 1fr) minmax(0, 1fr);--sqlRes: 12px 8px minmax(0, 1fr) auto 38px;--sqlApp: none;--sqlDbCol: none;--sqlDbSub: block;--sqlNow: minmax(0, 1fr) 64px 46px;--sqlRoute: none;--sqlSug: minmax(0, 1fr) 84px 26px;--sqlBtnFlex: 1 1 100%;--sqlHistDir: column;--sqlKbd: none}}*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--bg)}body{-webkit-font-smoothing:antialiased;color:var(--tx);font-family:var(--sans);font-size:14px;line-height:1.45}a{color:var(--run);text-decoration:none}a:hover{color:#7fd0f5}button,input,select,textarea{font:inherit;color:inherit}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:#0d1015}::-webkit-scrollbar-thumb{background:#2b323e;border:2px solid #0d1015;border-radius:6px}::-webkit-scrollbar-thumb:hover{background:#3c4553}@keyframes pulse{0%,to{opacity:1}50%{opacity:.28}}@keyframes sweep{0%{transform:translate(-100%)}to{transform:translate(320%)}}@keyframes blink{0%,49%{opacity:1}50%,to{opacity:0}}@keyframes shim{0%{background-position:-220px 0}to{background-position:220px 0}}.shell{display:flex;min-height:100vh}.side{width:198px;flex:none;background:#0c0f14;border-right:1px solid var(--b);display:var(--sbDisp);flex-direction:column;position:sticky;top:0;height:100vh}.side-head{padding:16px 16px 14px;border-bottom:1px solid var(--b)}.side-mark{display:block;flex:none}.side-nav{padding:8px 6px;display:flex;flex-direction:column;gap:1px}.side-foot{margin-top:auto;padding:12px 14px;border-top:1px solid var(--b)}.nav-item{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center;padding:7px 10px;cursor:pointer;border-radius:3px;border:none;border-left:2px solid transparent;background:transparent;color:var(--mu);text-align:left;width:100%}.nav-item:hover{background:var(--s2)}.nav-item.on{background:var(--s2);color:var(--tx);border-left-color:var(--run)}.nav-count{font-family:var(--mono);font-size:12px;padding:1px 5px;border-radius:2px;color:var(--dim)}.nav-count.hot{color:var(--att);background:var(--att-bg)}.main{flex:1;min-width:var(--mainMin);display:flex;flex-direction:column}.topbar{height:46px;flex:none;border-bottom:1px solid var(--b);background:#0c0f14;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 var(--barPadX);position:sticky;top:0;z-index:20}.crumb{display:flex;align-items:center;gap:10px;min-width:0;font-family:var(--mono);font-size:13px;color:var(--mu)}.crumb-root{display:var(--crumbDisp)}.crumb-leaf{color:var(--tx);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.live{display:flex;align-items:center;gap:7px;font-family:var(--mono);font-size:12px;padding:4px 9px;border-radius:3px}.live-dot{width:6px;height:6px;border-radius:50%}.offline-bar{background:var(--att-bg);border-bottom:1px solid var(--att-br);padding:9px 16px;display:flex;align-items:center;gap:12px}.page{padding:var(--padT) var(--padX) var(--padB2);width:100%}.mono{font-family:var(--mono)}.mu{color:var(--mu)}.dim{color:var(--dim)}.faint{color:var(--faint)}.ok{color:var(--ok)}.bad{color:var(--fail)}.warn{color:var(--att)}.run{color:var(--run)}.h1{font-size:18px;font-weight:600;letter-spacing:-.01em}.h2{font-size:16px;font-weight:600}.sub{font-size:13px;color:var(--dim);margin-top:3px}.cap{font-size:11.5px;letter-spacing:.07em;text-transform:uppercase;color:var(--faint)}.card{border:1px solid var(--b);border-radius:4px;background:var(--s1);overflow:hidden}.card-wide{overflow-x:var(--wideOv)}.card-head{padding:10px 14px;border-bottom:1px solid var(--b);background:var(--s2);display:flex;align-items:center;justify-content:space-between;gap:12px}.btn{font-size:13px;padding:6px 11px;border-radius:3px;cursor:pointer;background:var(--s1);color:var(--mu);border:1px solid var(--b2)}.btn:hover:not(:disabled){color:var(--tx);border-color:var(--b3)}.btn:disabled{cursor:not-allowed;opacity:.55}.btn-primary{background:var(--run);color:#04222f;border-color:var(--run);font-weight:500}.btn-primary:hover:not(:disabled){background:#69c9f2;border-color:#69c9f2;color:#04222f}.btn-danger{background:transparent;color:var(--fail);border-color:var(--fail)}.btn-danger:hover:not(:disabled){background:var(--fail-bg);color:var(--fail);border-color:var(--fail)}.btn-sm{font-size:12.5px;padding:4px 9px}.icon-btn{width:22px;height:22px;flex:none;display:flex;align-items:center;justify-content:center;font-size:12px;line-height:1;border-radius:3px;cursor:pointer;background:var(--s1);color:var(--dim);border:1px solid var(--b2)}.icon-btn:hover:not(:disabled){color:var(--tx);border-color:var(--b3)}.icon-btn:disabled{cursor:not-allowed;opacity:.55}.icon-btn.ok:hover:not(:disabled){color:var(--ok);border-color:var(--ok-br)}.icon-btn.no:hover:not(:disabled){color:var(--fail);border-color:var(--fail-br)}.u-seen{text-align:var(--uSeenAlign)}.tag{font-size:11px;padding:1px 5px;border-radius:2px;white-space:nowrap;border:1px solid transparent}.dep-tags .tag{white-space:normal}.tag-todo{font-weight:600}.chip{display:flex;align-items:center;gap:7px;padding:5px 10px;border-radius:3px;cursor:pointer;background:var(--s1);border:1px solid var(--b)}.chip:hover{border-color:var(--b3)}.chip.on{background:var(--s3);border-color:var(--b3)}.chip-n{font-family:var(--mono);font-size:13px;font-weight:600}.seg{display:flex;flex:none;height:var(--ctlH);border:1px solid var(--b2);border-radius:3px;overflow:hidden}.seg-item{display:flex;align-items:center;font-family:var(--mono);font-size:13px;padding:0 11px;border:none;background:transparent;color:var(--dim);cursor:pointer;white-space:nowrap}.seg-item+.seg-item{border-left:1px solid var(--b2)}.seg-item:hover:not(.on){color:var(--mu);background:var(--s1)}.seg-item.on{background:var(--s3);color:var(--tx);cursor:default}.seg-n{margin-left:7px;font-weight:600;color:var(--mu)}.seg-item.on .seg-n{color:var(--tx)}.field{display:flex;align-items:center;gap:8px;height:var(--ctlH);border:1px solid var(--b2);background:#0c0f14;border-radius:3px;padding:0 10px}.field input,.field select{flex:1;align-self:stretch;min-width:0;margin:0;padding:0;background:transparent;border:none;outline:none;color:var(--tx);font-family:var(--mono);font-size:13px}.field select option{background:#0c0f14}.suggest{position:relative}.suggest-list{position:absolute;left:0;right:0;top:calc(100% + 3px);z-index:10;padding:3px;background:var(--s1);border:1px solid var(--b2);border-radius:3px;box-shadow:0 8px 24px #00000073}.suggest-item{display:flex;align-items:baseline;flex-wrap:wrap;gap:2px 10px;width:100%;padding:6px 8px;border:none;border-radius:2px;background:transparent;color:var(--mu);cursor:pointer;text-align:left}.suggest-item.on{background:var(--s3);color:var(--tx)}.suggest-note{padding:6px 8px;font-size:12px;color:var(--faint)}.field.lead-in{padding:0 9px 0 0;gap:0}.field .lead{align-self:stretch;margin-right:8px;padding:0 9px;border:none;border-right:1px solid var(--b2);border-radius:2px 0 0 2px;background:var(--s3);color:var(--tx);font-family:var(--mono);font-size:12.5px;cursor:pointer}.field .lead:hover{background:var(--b2)}.field.bad-edge{border-color:var(--fail-br)}.latest-min{display:flex;align-items:stretch;flex:none;height:22px;margin:4px 0 4px auto;border:1px solid var(--b2);border-radius:2px;background:#0c0f14;cursor:text}.latest-min:focus-within{border-color:var(--run-br)}.latest-min span{display:flex;align-items:center;padding:0 5px;border-right:1px solid var(--b2);background:var(--s3);color:var(--faint);font-family:var(--mono);font-size:10px;letter-spacing:.05em}.latest-min input{width:calc(6ch + 12px);margin:0;padding:0 6px;background:transparent;border:none;outline:none;color:var(--tx);font-family:var(--mono);font-size:12px}.latest-min input::placeholder{color:var(--faint)}.box{width:12px;height:12px;border-radius:2px;border:1px solid var(--b3);background:transparent;display:flex;align-items:center;justify-content:center;font-size:10px;color:#04222f;flex:none}.box.on{background:var(--run);border-color:var(--run)}.box.off{opacity:.35}.pick-hit{position:absolute;top:calc(-1 * var(--rowPadY));bottom:calc(-1 * var(--rowPadY));left:0;right:-12px;padding:var(--rowPadY) 12px 0 0;display:flex;justify-content:center;align-items:var(--rowAlign);background:none;border:none;cursor:pointer}.pick-hit:disabled{cursor:not-allowed}.pick-hit:not(:disabled):hover .box{border-color:var(--run)}.track{height:6px;background:var(--s3);border-radius:1px;overflow:hidden;position:relative;flex:none}.track-fill{position:absolute;left:0;top:0;bottom:0;opacity:.45}.track-sweep{position:absolute;top:0;bottom:0;width:26px;background:linear-gradient(90deg,transparent,#8fd8f7,transparent);animation:sweep 1.5s linear infinite;opacity:.6}.skel{background:linear-gradient(90deg,var(--s2) 25%,var(--s3) 50%,var(--s2) 75%);background-size:220px 100%;animation:shim 1.1s linear infinite;border-radius:2px}.stale-data{opacity:.55;transition:opacity .2s}table.grid{width:100%;border-collapse:collapse}.row-link{cursor:pointer}.row-link:hover{background:var(--s2)!important}.row-edge{align-self:stretch;visibility:var(--edgeVis)}.dag{display:flex;flex-direction:var(--dagDir);align-items:var(--dagAlign);flex-wrap:wrap}.dag-item{display:flex;flex-direction:var(--dagDir);align-items:var(--dagAlign)}.dag-arrow{color:var(--faint);font-size:12px;text-align:center;padding:var(--dagArrowPad);transform:var(--dagArrowRot)}.runbar{display:flex;flex-direction:var(--runbarDir);align-items:var(--runbarAlign);justify-content:space-between;gap:var(--runbarGap);padding:9px 16px;border-bottom:1px solid var(--b);background:var(--s2)}.runbar-acts{display:flex;flex-wrap:wrap;align-items:center;gap:7px}.att-body{padding:12px 14px;display:flex;flex-direction:var(--attDir);justify-content:space-between;align-items:flex-start;gap:20px}.bottombar{display:var(--barDisp);position:fixed;left:0;right:0;bottom:0;z-index:60;background:#0c0f14;border-top:1px solid var(--b);padding:5px 5px calc(5px + env(safe-area-inset-bottom))}.bottombar-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:2px}.bottombar-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:52px;border:none;border-radius:3px;cursor:pointer;background:transparent;color:var(--mu);text-decoration:none}.bottombar-item.on{background:var(--s3);color:var(--tx)}.bottombar-glyph{font-family:var(--mono);font-size:14px;line-height:1}.bottombar-label{font-size:10.5px;line-height:1.1;text-align:center}.bottombar-count{font-family:var(--mono);font-size:10px;line-height:1;color:var(--dim)}.bottombar-count.hot{color:var(--att)}.sheet-scrim{display:var(--barDisp);position:fixed;inset:0;z-index:70;background:#05070ab8}.sheet{position:absolute;left:0;right:0;bottom:0;background:var(--s1);border-top:1px solid var(--b2);padding:14px 14px calc(16px + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:8px}.sheet-item{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:46px;padding:0 12px;border-radius:3px;font-size:14px;cursor:pointer;background:var(--s2);border:1px solid var(--b);color:var(--mu);text-align:left;text-decoration:none}.sheet-item.on{background:var(--s3);color:var(--tx)}.sheet-foot{display:flex;flex-direction:column;gap:6px;margin-top:4px;padding-top:12px;border-top:1px solid var(--b)}@media(max-width:767px){.srv-col{display:none!important}}.sql-hist-body{display:flex;flex-direction:var(--sqlHistDir);gap:10px;padding:10px 14px;align-items:stretch}.only-narrow{display:none}@media(max-width:1200px){.only-narrow{display:flex}}
