:root{--bg1: #060d1f;--bg2: #0a1730;--glass: rgba(96, 145, 255, .05);--glass-2: rgba(96, 145, 255, .09);--line: rgba(96, 145, 255, .16);--line-hi: rgba(96, 145, 255, .32);--txt: #e6eeff;--dim: #9fb2d8;--faint: #6c7ea6;--blue: #3b82f6;--blue-hi: #60a5fa;--cyan: #22d3ee;--good: #34d399;--warn: #fbbf24;--bad: #f87171;--run: #60a5fa;--violet: #a78bfa;--good-bg: rgba(52, 211, 153, .1);--good-line: rgba(52, 211, 153, .34);--warn-bg: rgba(251, 191, 36, .1);--warn-line: rgba(251, 191, 36, .34);--bad-bg: rgba(248, 113, 113, .1);--bad-line: rgba(248, 113, 113, .34);--blue-bg: rgba(59, 130, 246, .1);--blue-line: rgba(96, 145, 255, .34);--radius: 14px;--radius-sm: 10px;--radius-xs: 8px;--shadow: 0 8px 30px rgba(2, 8, 23, .35);--shadow-hi: 0 12px 40px rgba(2, 8, 23, .5);--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 24px;--sp-6: 32px}:root[data-theme=light]{--bg1: #eef3ff;--bg2: #ffffff;--glass: rgba(59, 130, 246, .05);--glass-2: rgba(59, 130, 246, .08);--line: rgba(59, 130, 246, .18);--line-hi: rgba(59, 130, 246, .32);--txt: #0b1836;--dim: #4a5c85;--faint: #7f8db0;--good-bg: rgba(16, 160, 110, .1);--good-line: rgba(16, 160, 110, .34);--warn-bg: rgba(202, 138, 4, .12);--warn-line: rgba(202, 138, 4, .34);--bad-bg: rgba(220, 60, 60, .1);--bad-line: rgba(220, 60, 60, .34);--blue-bg: rgba(59, 130, 246, .09);--blue-line: rgba(59, 130, 246, .34);--good: #10a06e;--bad: #dc3c3c;--warn: #b7830b;--shadow: 0 8px 30px rgba(20, 40, 90, .1);--shadow-hi: 0 12px 40px rgba(20, 40, 90, .16)}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;color:var(--txt);font:15px/1.55 Inter,system-ui,sans-serif;background:radial-gradient(1100px 650px at 78% -14%,#12224a 0,transparent 60%),radial-gradient(900px 600px at 0% 110%,#0c1c3f 0,transparent 55%),var(--bg1) fixed;min-height:100vh;-webkit-font-smoothing:antialiased}:root[data-theme=light] body{background:radial-gradient(1100px 650px at 78% -14%,#dbe6ff 0,transparent 60%),radial-gradient(900px 600px at 0% 110%,#e3ecff 0,transparent 55%),var(--bg1) fixed}h1,h2,h3{font-family:Space Grotesk,Inter,sans-serif;margin:0;line-height:1.2}h2{font-size:clamp(18px,2.6vw,22px);font-weight:600}h3{font-size:15px;font-weight:600;letter-spacing:.01em}a{color:var(--blue-hi);text-decoration:none}a:hover{text-decoration:underline}code,pre,.mono{font-family:JetBrains Mono,ui-monospace,monospace}.app{max-width:1180px;margin:0 auto;padding:0 clamp(12px,4vw,40px) 56px}.topbar{position:sticky;top:0;z-index:20;width:100%;margin-bottom:var(--sp-5);background:color-mix(in srgb,var(--bg1) 82%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.topbar-inner{max-width:1180px;margin:0 auto;display:flex;align-items:center;gap:var(--sp-3);flex-wrap:wrap;padding:var(--sp-3) clamp(12px,4vw,40px)}.topbar .brand{display:inline-flex;align-items:center;gap:var(--sp-2);font-weight:700;font-size:19px;letter-spacing:-.01em}.topbar .brand svg{color:var(--blue-hi)}.topbar .spacer{flex:1}.topbar .nav{display:flex;align-items:center;gap:var(--sp-2);flex-wrap:wrap}.tag{font:600 10.5px JetBrains Mono,monospace;text-transform:uppercase;letter-spacing:.08em;color:var(--faint);padding:2px 8px;border:1px solid var(--line);border-radius:999px}.page-head{display:flex;align-items:center;gap:var(--sp-3);flex-wrap:wrap;margin-bottom:var(--sp-4)}.page-head h2{display:inline-flex;align-items:center;gap:var(--sp-2)}.card{background:var(--glass);border:1px solid var(--line);border-radius:var(--radius);padding:var(--sp-4) var(--sp-5);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.card+.card,.stack>*+*{margin-top:var(--sp-4)}.card.interactive{transition:border-color .16s,transform .16s,box-shadow .16s}.card.interactive:hover{border-color:var(--line-hi);box-shadow:var(--shadow);transform:translateY(-2px)}.callout{border-radius:var(--radius-sm);padding:10px 12px;font-size:13px;border:1px solid var(--line);background:var(--glass-2);display:flex;gap:var(--sp-2);align-items:flex-start}.callout svg{flex:none;margin-top:1px}.callout.good{background:var(--good-bg);border-color:var(--good-line)}.callout.warn{background:var(--warn-bg);border-color:var(--warn-line)}.callout.bad{background:var(--bad-bg);border-color:var(--bad-line)}.callout.info{background:var(--blue-bg);border-color:var(--blue-line)}.callout.good svg{color:var(--good)}.callout.warn svg{color:var(--warn)}.callout.bad svg{color:var(--bad)}.callout.info svg{color:var(--blue-hi)}.grid{display:grid;gap:var(--sp-4);grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.loops-grid{grid-auto-rows:1fr}.loops-grid>.card{margin-top:0;display:flex;flex-direction:column}.loops-grid>.card>.wrap{margin-top:auto}.loops-grid .row>.badge{flex-shrink:0}.loop-title{flex:1;min-width:0;font-size:15px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.split{display:grid;gap:var(--sp-4);grid-template-columns:1fr 1fr}.split.top{align-items:start}@media (max-width: 760px){.split{grid-template-columns:1fr}}.panel-scroll{max-height:60vh;overflow:auto;margin-top:var(--sp-2);border:1px solid var(--line);border-radius:var(--radius-sm);padding:10px 12px;background:#03081447}:root[data-theme=light] .panel-scroll{background:#ffffff80}.filter-bar{display:flex;gap:var(--sp-2);flex-wrap:wrap;align-items:center;margin-top:var(--sp-2)}.filter-bar .search{position:relative;flex:1;min-width:180px}.filter-bar .search svg{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:var(--faint);pointer-events:none}.filter-bar .search input{padding-left:32px}.filter-bar select{width:auto;min-width:130px}.tabs{display:flex;gap:var(--sp-1);margin-bottom:var(--sp-4);border-bottom:1px solid var(--line)}.tab{display:inline-flex;align-items:center;gap:6px;cursor:pointer;background:none;border:none;color:var(--dim);font:600 13px Inter,sans-serif;padding:9px 14px;border-bottom:2px solid transparent;margin-bottom:-1px;transition:color .14s,border-color .14s}.tab:hover{color:var(--txt)}.tab.on{color:var(--blue-hi);border-bottom-color:var(--blue-hi)}.tab .tab-count{font:600 10.5px JetBrains Mono,monospace;padding:1px 7px;border-radius:999px;background:var(--glass-2);border:1px solid var(--line);color:var(--faint)}.tab.on .tab-count{color:var(--blue-hi);border-color:var(--blue-line);background:var(--blue-bg)}.audit-split{display:grid;gap:var(--sp-4);grid-template-columns:minmax(0,380px) minmax(0,1fr);align-items:start}.audit-split>.card{min-width:0}@media (max-width: 860px){.audit-split{grid-template-columns:1fr}}.audit-viewer .audit{overflow-wrap:anywhere;word-break:break-word}.stat-row{display:flex;flex-wrap:wrap;gap:6px var(--sp-4);align-items:baseline}.stat{display:inline-flex;align-items:baseline;gap:5px;font-size:12px;color:var(--dim)}.stat svg{align-self:center;color:var(--faint)}.stat b{font:700 15px Space Grotesk,sans-serif;color:var(--txt);letter-spacing:-.01em}.stat.accent b,.stat.accent svg{color:var(--blue-hi)}.stat.good b,.stat.good svg{color:var(--good)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;font:600 13px Inter,sans-serif;color:var(--txt);cursor:pointer;background:var(--glass-2);border:1px solid var(--line);border-radius:var(--radius-sm);padding:8px 13px;transition:border-color .15s,background .15s,transform .05s;white-space:nowrap;line-height:1}.btn:hover:not(:disabled){border-color:var(--line-hi);background:var(--glass)}.btn:active:not(:disabled){transform:translateY(1px)}.btn:focus-visible{outline:2px solid var(--blue-hi);outline-offset:2px}.btn.primary{background:linear-gradient(180deg,var(--blue-hi),var(--blue));border-color:transparent;color:#fff;box-shadow:0 4px 14px #3b82f659}.btn.primary:hover:not(:disabled){filter:brightness(1.06);border-color:transparent}.btn:disabled{opacity:.42;cursor:not-allowed}.btn.sm{padding:5px 10px;font-size:12px;gap:5px}.btn.danger{color:var(--bad);border-color:var(--bad-line)}.btn.danger:hover:not(:disabled){background:var(--bad-bg);border-color:var(--bad)}.btn.active{color:var(--warn);border-color:var(--warn-line);background:var(--warn-bg)}.btn.icon-only{padding:8px}.btn.icon-only.sm{padding:6px}.badge{display:inline-flex;align-items:center;gap:5px;font:600 11px JetBrains Mono,monospace;padding:3px 9px;border-radius:999px;border:1px solid var(--line);text-transform:uppercase;letter-spacing:.05em;color:var(--dim)}.badge .dot{width:7px;height:7px;border-radius:50%;background:currentColor;flex:none}.badge.idle{color:var(--faint)}.badge.running{color:var(--run);border-color:var(--blue-line);background:var(--blue-bg)}.badge.running .dot{animation:pulse 1.4s ease-in-out infinite}.badge.paused,.badge.blocked,.badge.awaiting{color:var(--warn);border-color:var(--warn-line);background:var(--warn-bg)}.badge.awaiting .dot{animation:pulse 1.4s ease-in-out infinite}.badge.queued{color:var(--faint)}.badge.processing{color:var(--run);border-color:var(--blue-line);background:var(--blue-bg)}.badge.processing .dot{animation:pulse 1.4s ease-in-out infinite}.badge.stopped{color:var(--faint)}.badge.done{color:var(--good);border-color:var(--good-line);background:var(--good-bg)}.badge.error{color:var(--bad);border-color:var(--bad-line);background:var(--bad-bg)}.badge.plain{text-transform:none;letter-spacing:0}.chip{display:inline-flex;align-items:center;gap:6px;cursor:default;font:600 12px Inter,sans-serif;padding:5px 11px;border-radius:999px;border:1px solid var(--line);background:var(--glass-2);color:var(--txt)}.chip.pick{cursor:pointer;color:var(--blue-hi);border-color:var(--blue-line);background:var(--blue-bg)}.chip.pick:hover{border-color:var(--blue-hi)}.chip.toggle{cursor:pointer;color:var(--dim);background:var(--glass-2);transition:color .14s,border-color .14s,background .14s}.chip.toggle svg{color:var(--faint);transition:color .14s}.chip.toggle:hover{border-color:var(--line-hi);color:var(--txt)}.chip.on{color:var(--blue-hi);border-color:var(--blue-line);background:var(--blue-bg)}.chip.on svg{color:var(--blue-hi)}.chip .chip-x{display:inline-flex;align-items:center;justify-content:center;background:none;border:none;color:inherit;cursor:pointer;padding:0;margin-left:2px;opacity:.7}.chip .chip-x:hover{opacity:1;color:var(--bad)}.ai-design{border:1px solid var(--line);border-radius:var(--radius-sm);padding:var(--sp-3) var(--sp-4);background:linear-gradient(135deg,color-mix(in srgb,var(--violet) 8%,transparent),color-mix(in srgb,var(--blue) 6%,transparent))}.ai-design-head{display:flex;align-items:center;gap:var(--sp-2);flex-wrap:wrap}.ai-design-title{display:inline-flex;align-items:center;gap:6px;font:600 14px Space Grotesk,Inter,sans-serif;color:var(--txt)}.ai-design-title svg{color:var(--violet)}.modal-scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:flex;align-items:center;justify-content:center;padding:var(--sp-4);background:#03081494;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:fade-in .12s ease}.modal-card{width:100%;max-width:560px;max-height:90vh;overflow:auto;background:var(--bg2);border:1px solid var(--line-hi);border-radius:var(--radius);box-shadow:var(--shadow-hi);animation:pop-in .14s ease}.modal-head{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-4) var(--sp-5);border-bottom:1px solid var(--line)}.modal-head h3{flex:1}.modal-body{padding:var(--sp-4) var(--sp-5)}.modal-foot{display:flex;gap:var(--sp-2);flex-wrap:wrap;padding:var(--sp-3) var(--sp-5) var(--sp-4);border-top:1px solid var(--line)}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes pop-in{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:none}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.35}}@keyframes spin{to{transform:rotate(360deg)}}.spin{animation:spin 1s linear infinite;color:var(--run)}.status-dot{display:inline-flex;align-items:center;gap:6px;font-size:13px}.status-dot .dot{width:8px;height:8px;border-radius:50%;flex:none;box-shadow:0 0 0 3px transparent}.status-dot.live .dot{background:var(--good);box-shadow:0 0 0 3px var(--good-bg)}.status-dot.stub .dot{background:var(--faint)}.status-dot.live{color:var(--good)}.status-dot.stub{color:var(--dim)}.kpis{display:grid;gap:var(--sp-3);grid-template-columns:repeat(auto-fit,minmax(112px,1fr))}.kpi-card{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--glass-2);padding:10px 12px}.kpi-card .label{display:flex;align-items:center;gap:5px;font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--dim)}.kpi-card .value{font:700 22px Space Grotesk,sans-serif;margin-top:3px;letter-spacing:-.01em}.kpi-card.accent .value{color:var(--blue-hi)}.kpi-card.good .value{color:var(--good)}.kpi-card.warn .value{color:var(--warn)}.kpi-card .label svg{color:var(--faint)}.row{display:flex;align-items:center;gap:var(--sp-3)}.wrap{display:flex;flex-wrap:wrap;gap:var(--sp-2)}.dim{color:var(--dim)}.faint{color:var(--faint)}.mini{font-size:12px}.spacer{flex:1}label{display:block;font-size:12px;color:var(--dim);margin:var(--sp-3) 0 var(--sp-1);font-weight:500}input,select,textarea{width:100%;background:#03081461;color:var(--txt);border:1px solid var(--line);border-radius:var(--radius-xs);padding:9px 11px;font:14px Inter,sans-serif;transition:border-color .15s,box-shadow .15s}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--blue-hi);box-shadow:0 0 0 3px var(--blue-bg)}input::placeholder,textarea::placeholder{color:var(--faint)}input:disabled,select:disabled,textarea:disabled{opacity:.5;cursor:not-allowed;background:color-mix(in srgb,var(--faint) 12%,transparent);color:var(--faint);border-style:dashed}:root[data-theme=light] input:disabled,:root[data-theme=light] select:disabled,:root[data-theme=light] textarea:disabled{background:#7887aa1f}:root[data-theme=light] input,:root[data-theme=light] select,:root[data-theme=light] textarea{background:#fff}textarea{font:13px/1.5 Inter,sans-serif;resize:vertical}select{cursor:pointer}.form-grid{display:grid;gap:2px var(--sp-3);grid-template-columns:repeat(12,1fr)}.field{min-width:0}.field label{margin-top:var(--sp-3)}.col-2{grid-column:span 2}.col-3{grid-column:span 3}.col-4{grid-column:span 4}.col-6{grid-column:span 6}.col-8{grid-column:span 8}.col-12{grid-column:span 12}@media (max-width: 640px){.form-grid>.field{grid-column:1 / -1}}details.adv{margin-top:var(--sp-4);border-top:1px solid var(--line);padding-top:var(--sp-3)}details.adv>summary{cursor:pointer;list-style:none;display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--dim);font-weight:500}details.adv>summary::-webkit-details-marker{display:none}details.adv>summary .chev{transition:transform .15s}details.adv[open]>summary .chev{transform:rotate(90deg)}.stream{max-height:360px;overflow:auto;border-radius:var(--radius-sm);background:#0308146b;border:1px solid var(--line);padding:6px 10px}:root[data-theme=light] .stream{background:#fff9}.ev{font:12px JetBrains Mono,monospace;padding:5px 2px;border-bottom:1px dashed var(--line);display:flex;gap:8px}.ev:last-child{border-bottom:none}.ev .t{color:var(--blue-hi);flex:none;font-weight:600;padding:1px 6px;border-radius:5px;background:var(--blue-bg)}.ev .p{color:var(--dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}pre.audit{white-space:pre-wrap;font-size:12.5px;max-height:440px;overflow:auto;background:#0308146b;border:1px solid var(--line);border-radius:var(--radius-sm);padding:12px;margin:0}:root[data-theme=light] pre.audit{background:#fff9}.linkbtn{background:none;border:none;color:var(--blue-hi);cursor:pointer;font:inherit;padding:0;text-align:left}.linkbtn:hover{text-decoration:underline}.tree{list-style:none;padding-left:0;margin:0}.tree li{list-style:none}.tree .node{display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding:3px 0}.tree .lvl2{margin-left:16px;border-left:1px solid var(--line);padding-left:12px}.tree .lvl3{margin-left:16px;color:var(--dim)}.table-scroll{overflow-x:auto;margin:var(--sp-2) calc(-1 * var(--sp-2)) 0;padding:0 var(--sp-2)}table{border-collapse:collapse;width:100%}table th,table td{padding:8px 10px;vertical-align:top;border-bottom:1px solid var(--line);text-align:left}table th{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--faint);font-weight:600}table tbody tr:hover{background:var(--glass)}table.kv td{border-bottom:1px solid var(--line)}table.kv td:first-child{color:var(--dim);width:120px}.divider{height:1px;background:var(--line);border:none;margin:var(--sp-4) 0}.quote{color:var(--dim);border-left:2px solid var(--line);padding-left:10px;font-style:italic}.flex{display:flex}.items-center{align-items:center}.gap-2{gap:var(--sp-2)}.mt-2{margin-top:var(--sp-2)}.mt-3{margin-top:var(--sp-3)}.mt-4{margin-top:var(--sp-4)}.center-narrow{max-width:440px;margin:8vh auto 0}
