@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap";:root{--bg: #09090b;--bg-raised: #0f0f12;--panel: #18181b;--panel-2: #1f1f23;--line: #27272a;--line-strong: #3f3f46;--ink: #fafafa;--ink-2: #e2e8f0;--ink-3: #cbd5e1;--ink-4: #94a3b8;--ok: #4ade80;--warn: #fbbf24;--fail: #f87171;--live: #60a5fa;--gate: #e0b341;--accent: #f0b429;--sans: "Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", sans-serif;--mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--radius: 10px;color-scheme:dark;font-family:var(--sans);font-size:15px;background:var(--bg);color:var(--ink-2)}*{box-sizing:border-box}body{margin:0;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:#7dbcff;text-decoration-color:#7dbcff66;text-underline-offset:3px}a:hover{color:#a5d0ff}code,pre,.mono,.seq,.eat,.prov,.hash{font-family:var(--mono)}table,.tabular,.figure .v,.metric-value{font-variant-numeric:tabular-nums}::selection{background:#f0b4294d;color:#fff}::-webkit-scrollbar{width:11px;height:11px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#3f3f46;border:3px solid transparent;background-clip:content-box;border-radius:9999px}::-webkit-scrollbar-thumb:hover{background:#52525b;background-clip:content-box}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.shell{display:flex;min-height:100vh}.side{position:sticky;top:0;align-self:flex-start;width:244px;height:100vh;flex-shrink:0;border-right:1px solid var(--line);background:var(--bg-raised);display:flex;flex-direction:column;gap:3px;padding:16px 12px}.side .brand{display:flex;align-items:center;gap:11px;margin:0 4px 18px;padding-bottom:16px;border-bottom:1px solid var(--line)}.side .brand .mark{width:34px;height:34px;flex-shrink:0;display:grid;place-items:center;border-radius:9px;background:#f0b42924;box-shadow:inset 0 0 0 1px #f0b42959;color:var(--accent)}.side .brand .brand-text{display:flex;flex-direction:column;min-width:0;line-height:1.25}.side .brand .wordmark{display:block;font-size:16px;font-weight:600;letter-spacing:-.01em;color:var(--ink)}.side .brand .tagline{display:block;font-size:12px;font-weight:400;color:var(--ink-4)}.side a{position:relative;display:flex;align-items:center;gap:11px;padding:9px 12px;border-radius:8px;text-decoration:none;color:var(--ink-3);font-size:15px;font-weight:500;transition:background .12s ease,color .12s ease}.side a:hover{background:#1f1f23;color:var(--ink)}.side a.active{background:#27272a;color:var(--ink)}.side a.active:before{content:"";position:absolute;left:-12px;top:8px;bottom:8px;width:3px;border-radius:0 3px 3px 0;background:var(--accent)}.side a svg{width:17px;height:17px;flex-shrink:0;opacity:.85}.side a .note{display:none}.side .rail-foot{margin-top:auto;padding:14px 8px 4px;border-top:1px solid var(--line);font-size:12.5px;color:var(--ink-4);line-height:1.55}.main{flex:1;min-width:0}.page{padding:26px 30px 56px;max-width:1680px}.split{display:flex;height:100vh}.split .page{flex:1;overflow:auto}.page h1{font-size:24px;font-weight:600;letter-spacing:-.02em;color:var(--ink);margin:0}.page-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:22px}.page-head .titles{display:flex;flex-direction:column;gap:4px;min-width:0}.page-head .lede{font-size:14px;color:var(--ink-4)}.page h3{font-size:15px;font-weight:600;letter-spacing:.01em;color:var(--ink);margin:30px 0 10px;display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.page h4{font-size:14px;font-weight:600;color:var(--ink-3);margin:18px 0 6px}.eyebrow{font-size:11.5px;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:var(--ink-3)}.hairline{height:1px;width:100%;background:var(--line)}.panel{position:relative;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);min-width:0}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 18px;border-bottom:1px solid var(--line)}.panel-head .titles{display:flex;align-items:baseline;gap:10px;min-width:0;flex-wrap:wrap}.panel-head .t{font-size:15px;font-weight:600;color:var(--ink);letter-spacing:-.005em}.panel-head .h{font-size:13px;color:var(--ink-4)}.panel-body{padding:18px}.panel-foot{padding:12px 18px;border-top:1px solid var(--line);font-size:13px;color:var(--ink-4)}.panel .rows>*{padding:14px 18px;border-bottom:1px solid var(--line)}.panel .rows>*:last-child{border-bottom:0}.bento{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:16px;margin-bottom:16px}.c3{grid-column:span 3}.c4{grid-column:span 4}.c5{grid-column:span 5}.c6{grid-column:span 6}.c7{grid-column:span 7}.c8{grid-column:span 8}.c12{grid-column:span 12}@media (max-width: 1400px){.c3,.c4,.c5{grid-column:span 6}.c7,.c8{grid-column:span 12}}@media (max-width: 860px){.bento>*{grid-column:span 12}}.figure{display:flex;align-items:baseline;gap:7px}.figure .v{font-size:30px;font-weight:600;line-height:1.1;letter-spacing:-.025em;color:var(--ink)}.figure.xl .v{font-size:38px}.figure .u{font-size:14px;font-weight:500;color:var(--ink-4)}.figure-note{margin-top:9px;font-size:13px;line-height:1.55;color:var(--ink-4)}.metric{cursor:help;display:inline-flex;align-items:baseline;gap:6px}.metric-label{color:var(--ink-4);font-size:13px}.metric-value{font-weight:600;color:var(--ink);font-size:15px;border-bottom:1px dashed #52525b;padding-bottom:1px;transition:border-color .12s ease}.metric:hover .metric-value{border-bottom-color:var(--accent)}.prov{margin-left:6px;font-size:12px;color:#1a1305;font-weight:500;background:var(--accent);border-radius:5px;padding:2px 7px;white-space:nowrap}.awaiting{display:inline-flex;align-items:center;gap:9px;font-size:12.5px;font-weight:600;letter-spacing:.06em;color:var(--ink-4);padding:10px 0}.awaiting:before{content:"";width:7px;height:7px;border-radius:9999px;background:#52525b;flex-shrink:0}.badge{display:inline-flex;align-items:center;gap:6px;border-radius:6px;padding:3px 9px;font-size:12.5px;font-weight:600;letter-spacing:.01em;white-space:nowrap;border:1px solid transparent}.badge.b-ok{color:#86efac;background:#4ade8024;border-color:#4ade8059}.badge.b-warn{color:#fcd34d;background:#fbbf2424;border-color:#fbbf2459}.badge.b-fail{color:#fca5a5;background:#f8717124;border-color:#f8717161}.badge.b-live{color:#93c5fd;background:#60a5fa24;border-color:#60a5fa59}.badge.b-gate{color:#f4d06a;background:#e0b34124;border-color:#e0b34159}.badge.b-idle{color:var(--ink-3);background:#27272a;border-color:var(--line-strong)}.dot{width:9px;height:9px;border-radius:9999px;flex-shrink:0;display:inline-block}.dot.d-ok{background:var(--ok)}.dot.d-warn{background:var(--warn)}.dot.d-fail{background:var(--fail)}.dot.d-idle{background:#64748b}.dot.d-live{background:var(--live);animation:pulseDot 1.8s ease-in-out infinite}@keyframes pulseDot{0%,to{opacity:1}50%{opacity:.3}}.hash{font-size:13px;color:var(--ink-2);background:#27272a;border-radius:5px;padding:2px 7px;border:1px solid var(--line-strong)}input,button,select,textarea{font-family:var(--sans)}input[type=text],input:not([type]),input[type=search],textarea{background:#0f0f12;color:var(--ink);border:1px solid var(--line-strong);border-radius:8px;padding:9px 12px;font-size:14px;min-height:38px;transition:border-color .12s ease,box-shadow .12s ease}input::placeholder{color:var(--ink-4)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #f0b4292e}button{background:#27272a;color:var(--ink);border:1px solid var(--line-strong);border-radius:8px;padding:9px 15px;font-size:14px;font-weight:500;min-height:38px;cursor:pointer;transition:background .12s ease,border-color .12s ease,color .12s ease}button:hover:not(:disabled){background:#34343a;border-color:#52525b}button:disabled{opacity:.45;cursor:not-allowed}button.primary{color:#1a1305;background:var(--accent);border-color:var(--accent);font-weight:600}button.primary:hover:not(:disabled){background:#f8c74a;border-color:#f8c74a}button.approve{color:#86efac;background:#4ade8029;border-color:#4ade8073;font-weight:600}button.approve:hover:not(:disabled){background:#4ade8047}button.reject,button.kill{color:#fca5a5;background:#f8717129;border-color:#f8717173;font-weight:600}button.reject:hover:not(:disabled),button.kill:hover:not(:disabled){background:#f8717147}button.kill.active{background:var(--fail);color:#1a0505;border-color:var(--fail)}button.link{background:none;border:none;color:#7dbcff;cursor:pointer;padding:0;min-height:0;font:inherit;text-decoration:underline;text-underline-offset:3px}button.link:hover:not(:disabled){background:none;color:#a5d0ff}select{background:#0f0f12;color:var(--ink);border:1px solid var(--line-strong);border-radius:8px;padding:9px 34px 9px 12px;font-size:14px;min-height:38px;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M3 4.5L6 7.5L9 4.5' stroke='%23cbd5e1' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 11px center;background-size:13px}select:hover{border-color:#52525b}select option{background:#18181b;color:var(--ink)}label{color:var(--ink-3);font-size:13.5px;display:inline-flex;align-items:center;gap:8px}input[type=range]{accent-color:var(--accent);height:6px;cursor:pointer}.row{display:flex;gap:12px;align-items:center;margin:12px 0;flex-wrap:wrap}.toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:14px}.tbl,.cmp{border-collapse:collapse;width:100%}.tbl th,.cmp th{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-3);text-align:left;padding:11px 16px;border-bottom:1px solid var(--line);white-space:nowrap;background:var(--bg-raised)}.tbl td,.cmp td{padding:12px 16px;border-bottom:1px solid var(--line);text-align:left;font-size:14px;color:var(--ink-2);vertical-align:middle}.tbl tbody tr,.cmp tbody tr{transition:background .1s ease}.tbl tbody tr:hover,.cmp tbody tr:hover{background:#1f1f23}.tbl tbody tr:last-child td,.cmp tbody tr:last-child td{border-bottom:0}.cmp th,.cmp td{text-align:right}.cmp td:first-child,.cmp th:first-child{text-align:left}.panel .tbl,.panel .cmp{margin:0}.tbl code,.cmp code{font-size:13px;color:var(--ink-2)}.tbl.fixed{table-layout:fixed}.tbl.fixed td{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.scroll-y{max-height:440px;overflow-y:auto}.scroll-y thead th{position:sticky;top:0;z-index:1}.meter{height:8px;border-radius:9999px;background:#27272a;overflow:hidden;display:flex}.meter>span{display:block;height:100%}.meter .m-ok{background:var(--ok)}.meter .m-fail{background:var(--fail)}.meter .m-accent{background:var(--accent)}.meter .m-warn{background:var(--warn)}.meter-row{display:flex;align-items:center;gap:14px}.meter-row .lbl{width:150px;flex-shrink:0;font-size:14px;color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.meter-row .meter{flex:1}.meter-row .val{width:62px;flex-shrink:0;text-align:right;font-size:14px;font-weight:600;color:var(--ink)}.meter-row .aux{width:74px;flex-shrink:0;text-align:right;font-size:13px;color:var(--ink-4)}.budget{display:inline-flex;align-items:center;gap:10px}.bar{display:inline-block;width:92px;height:8px;background:#27272a;border-radius:9999px;overflow:hidden}.fill{display:block;height:100%;background:var(--accent)}.banner{display:flex;align-items:center;flex-wrap:wrap;gap:11px;padding:14px 16px;margin:14px 0;border-radius:var(--radius);font-size:14px;border:1px solid rgba(248,113,113,.4);background:#f871711a;color:var(--ink-2)}.banner.warn{border-color:#fbbf2466;background:#fbbf241a}.banner.replay{border-color:#60a5fa66;background:#60a5fa1a}.banner.ok{border-color:#4ade8066;background:#4ade801a}.note-err{display:flex;gap:12px;align-items:flex-start;padding:14px 16px;border-radius:var(--radius);border:1px solid rgba(248,113,113,.35);background:#f8717112}.note-err .note-icon{width:20px;height:20px;flex-shrink:0;border-radius:9999px;margin-top:1px;display:grid;place-items:center;font-size:13px;font-weight:700;background:#f8717133;color:#fca5a5}.note-err .note-title{font-size:14px;font-weight:600;color:#fca5a5;margin-bottom:3px}.note-err .note-body{font-size:13.5px;line-height:1.55;color:var(--ink-3)}.note-err details{margin-top:8px}.note-err summary{font-size:13px;color:var(--ink-4);cursor:pointer}.note-err pre{margin:8px 0 0;padding:10px 12px;border-radius:8px;background:#09090b;border:1px solid var(--line);font-size:12px;line-height:1.5;color:var(--ink-3);white-space:pre-wrap;word-break:break-word;max-height:180px;overflow:auto}.feed{width:430px;flex-shrink:0;border-left:1px solid var(--line);overflow:auto;background:var(--bg-raised)}.feed-head{position:sticky;top:0;z-index:1;background:var(--bg-raised);padding:14px 16px;border-bottom:1px solid var(--line);font-size:14px;font-weight:600;color:var(--ink)}.feed-list{list-style:none;margin:0;padding:0}.feed-list li{padding:11px 16px;border-bottom:1px solid var(--line);cursor:pointer;transition:background .1s ease}.feed-list li:hover{background:#1f1f23}.feed-list li.hl{background:#60a5fa1f;box-shadow:inset 3px 0 0 var(--live)}.feed-list pre{margin:5px 0 0;white-space:pre-wrap;word-break:break-all;color:var(--ink-4);font-size:12px;line-height:1.55}.seq{color:var(--accent);font-size:13px;font-weight:500}.etype{font-size:13.5px;font-weight:600;color:var(--ink)}.eat{color:var(--ink-4);margin-left:8px;font-size:12px}.conn{float:right;font-size:12.5px;font-weight:500;display:inline-flex;align-items:center;gap:7px}.conn:before{content:"";width:7px;height:7px;border-radius:9999px;background:currentColor}.conn-open{color:var(--ok)}.conn-open:before{animation:pulseDot 1.8s ease-in-out infinite}.conn-reconnecting,.conn-connecting{color:var(--warn)}.conn-idle{color:var(--ink-4)}.conn-error{color:var(--fail)}.dag{max-width:100%;height:auto}.dag .node{cursor:pointer}.dag rect{fill:#1f1f23;stroke:var(--line-strong);stroke-width:1.5;transition:stroke .12s ease}.dag .node:hover rect{stroke:#71717a}.dag .sel rect{stroke:var(--accent);stroke-width:3}.dag text{fill:var(--ink);font-family:var(--sans);font-size:13px;font-weight:600}.dag .nstatus{fill:var(--ink-3);font-size:12px;font-weight:500}.dag .nelapsed{fill:var(--ink-4);font-size:11.5px;font-weight:400;font-family:var(--mono)}.dag .nrole{fill:var(--ink-4);font-weight:400}.dag .st-none rect{stroke-dasharray:4 3}.dag .st-claimed rect,.dag .st-running rect,.dag .st-verifying rect{stroke:var(--live);fill:#60a5fa1f}.dag .st-claimed .nstatus,.dag .st-running .nstatus,.dag .st-verifying .nstatus{fill:#93c5fd}.dag .st-succeeded rect{stroke:var(--ok);fill:#4ade801a}.dag .st-succeeded .nstatus{fill:#86efac}.dag .st-failed rect{stroke:var(--fail);fill:#f871711f}.dag .st-failed .nstatus{fill:#fca5a5}.dag .st-stalled rect{stroke:var(--warn);fill:#fbbf241f}.dag .st-stalled .nstatus{fill:#fcd34d}.dag .st-blocked rect{stroke:var(--line-strong);stroke-dasharray:3 3;fill:#18181b}.dag .st-blocked text{fill:var(--ink-4)}.dag .prov{fill:var(--accent)}.ws-section{margin:16px 0;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);overflow:hidden}.ws-section h3{margin:0;padding:13px 18px;background:var(--bg-raised);border-bottom:1px solid var(--line);font-size:14px;font-weight:600;letter-spacing:.02em;color:var(--ink);display:block}.ws-section .body{padding:16px 18px}.ws-section pre{margin:0;white-space:pre-wrap;word-break:break-all;font-size:12.5px;line-height:1.65;color:var(--ink-3)}.ws-section .body>pre{max-height:280px;overflow:auto}.drawer{margin-top:16px;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--bg-raised);padding:16px 18px}.drawer-head{display:flex;gap:12px;align-items:center;margin-bottom:12px}.drawer-head strong{font-size:14px;font-weight:600;color:var(--ink)}.drawer-head button{margin-left:auto}.drawer pre.diff,.drawer pre.testout,.ws-section pre.testout{max-height:440px;overflow:auto;font-size:12.5px;line-height:1.6;background:var(--bg);padding:14px;border-radius:8px;border:1px solid var(--line)}.d-add{color:#86efac}.d-del{color:#fca5a5}.d-hunk{color:#93c5fd}.tamper{color:#fff;background:#b3261e;padding:4px 10px;border-radius:6px;font-weight:600;font-size:13px}.replay-bar{align-items:center}.replay-bar input[type=range]{flex:1;min-width:220px}.replay-map tr.hl td{background:#60a5fa1f}.replay-map tr.hl td:first-child{box-shadow:inset 3px 0 0 var(--live)}.slo{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:16px;margin:12px 0}.slo-card{grid-column:span 3;min-width:0;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);padding:18px}.slo-card.wide{grid-column:span 12}@media (max-width: 1400px){.slo-card{grid-column:span 6}}@media (max-width: 860px){.slo-card{grid-column:span 12}}.slo-title{font-size:11.5px;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:var(--ink-3);margin-bottom:10px}.slo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}.slo-grid>.slo-cell+.slo-cell{border-left:1px solid var(--line)}.slo-cell{min-width:0;padding:18px}.slo-cell.accent{background:#f0b4290d}@media (max-width: 1400px){.slo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.slo-grid>.slo-cell:nth-child(3){border-left:0}.slo-grid>.slo-cell:nth-child(n+3){border-top:1px solid var(--line)}}.slo-detail{margin-top:22px}.slo-detail>summary{cursor:pointer;font-size:14px;color:var(--ink-3);padding:6px 0}.slo-detail>summary:hover{color:var(--ink)}.slo-detail pre.sql{font-size:12.5px;background:var(--bg);padding:14px;border-radius:8px;border:1px solid var(--line);white-space:pre;overflow:auto;color:var(--ink-3);line-height:1.6}.slo-detail h4{font-size:13px;font-weight:600;color:var(--ink-3);margin:18px 0 8px}.timeline td{padding:10px 16px}.err{color:#fca5a5;font-size:13.5px}.hint{color:var(--ink-4);font-size:13.5px}.crumbs{margin-bottom:14px;color:var(--ink-3);font-size:13.5px}.ok{color:#86efac}.bad{color:#fca5a5}.dim{opacity:.6}.cites td{text-align:left}.cites code{white-space:pre}.tag{display:inline-block;border-radius:6px;padding:3px 9px;margin:0 5px 5px 0;font-size:12.5px;font-weight:500;color:var(--ink-2);background:#27272a;border:1px solid var(--line-strong)}.tag.write{color:#fcd34d;background:#fbbf2424;border-color:#fbbf2466}.hash.rule-fired{color:#fca5a5;background:#f8717124;border-color:#f8717166}.col{min-width:0;display:flex;flex-direction:column}.col>h3:first-child{margin-top:0}.panel.accent-tile{background:linear-gradient(180deg,rgba(240,180,41,.07),transparent 60%),var(--panel)}.panel-body p.hint code{word-break:break-all;font-size:12.5px}.metric-value:has(.badge){border-bottom:0;padding-bottom:0}.spark{position:relative;height:96px;display:flex;align-items:flex-end;gap:5px}.spark>i{flex:1;border-radius:3px 3px 0 0;background:#3f3f46;transition:background .12s ease}.spark>i:hover{background:#64748b}.spark>i.now{background:var(--accent)}.spark-axis{display:flex;justify-content:space-between;margin-top:8px;font-size:12px;color:var(--ink-4)}
