:root{color-scheme:dark;--bg: #080d18;--bg-2: #0d1526;--panel: #111b30;--panel-2: #16223b;--line: #22314f;--text: #e8eefb;--muted: #8d9bb8;--accent: #38bdf8;--accent-2: #818cf8;--ok: #34d399;--warn: #fbbf24;--bad: #f87171;--idle: #5b6b8c;--radius: 16px;--font: system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif}*{box-sizing:border-box}html,body{margin:0}body{min-height:100vh;font-family:var(--font);color:var(--text);background:radial-gradient(900px 500px at 12% -10%,rgb(56 189 248 / .12),transparent 60%),radial-gradient(800px 480px at 100% 0%,rgb(129 140 248 / .12),transparent 55%),var(--bg);background-attachment:fixed;-webkit-font-smoothing:antialiased}h1,h2,h3,p,ul,dl,dd{margin:0;padding:0}ul{list-style:none}h1{font-size:1.15rem;letter-spacing:.01em}h2{font-size:1.1rem}h3{font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:1.25rem 0 .6rem}.muted{color:var(--muted)}.small{font-size:.8rem}.fineprint{margin-top:1rem;font-size:.75rem;color:var(--muted)}.eyebrow{font-size:.72rem;text-transform:uppercase;letter-spacing:.09em;color:var(--muted);margin-bottom:.2rem}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.shell{display:grid;grid-template-columns:248px minmax(0,1fr);min-height:100vh}.content{padding:20px 24px 48px;max-width:1360px;width:100%;margin:0 auto;min-width:0}main{display:grid;gap:16px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:20px}.brand{display:flex;align-items:center;gap:12px}.brand-text{display:grid;line-height:1.2}.logo{width:36px;height:36px;border-radius:50%;background:radial-gradient(circle at 50% 50%,var(--accent) 0 22%,transparent 24%),conic-gradient(from 200deg,var(--accent),var(--accent-2),var(--accent));-webkit-mask:radial-gradient(circle,transparent 0 46%,#000 48%);mask:radial-gradient(circle,transparent 0 46%,#000 48%);box-shadow:0 0 24px #38bdf873}.actions{display:flex;gap:8px;flex-wrap:wrap}.split{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(300px,1fr);gap:16px}.split-b{grid-template-columns:minmax(0,1.7fr) minmax(300px,1fr)}.panel{background:linear-gradient(180deg,var(--panel),var(--bg-2));border:1px solid var(--line);border-radius:var(--radius);padding:18px;min-width:0}.panel-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;flex-wrap:wrap}.btn{font:inherit;font-size:.875rem;color:var(--text);background:var(--panel-2);border:1px solid var(--line);padding:8px 14px;min-height:38px;border-radius:10px;cursor:pointer;transition:border-color .15s,background .15s,transform .15s}.btn:hover:not(:disabled){border-color:var(--accent)}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{opacity:.7;cursor:progress}.btn.primary{background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#06101f;border-color:transparent;font-weight:600}.kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.kpi-value{font-size:1.7rem;font-weight:650;letter-spacing:-.01em;font-variant-numeric:tabular-nums}.kpi-foot{display:flex;gap:8px;align-items:baseline;flex-wrap:wrap;margin-top:4px;font-size:.8rem}.delta{font-weight:600;padding:1px 7px;border-radius:999px;font-size:.75rem}.delta.good{color:var(--ok);background:#34d3991f}.delta.bad{color:var(--bad);background:#f871711f}.map{position:relative;width:100%;max-width:860px;margin:0 auto}.map-links{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.link-base{fill:none;stroke:var(--line);stroke-width:.5}.link-flow{fill:none;stroke:var(--accent);stroke-width:.5;stroke-linecap:round;stroke-dasharray:1.2 1.8;opacity:.9}.link-flow.link-running{animation:flow 1.1s linear infinite}.link-flow.link-healthy{stroke:var(--ok);stroke-dasharray:none}.link-flow.link-degraded{stroke:var(--warn);stroke-dasharray:none}.arrow{fill:var(--accent)}@keyframes flow{to{stroke-dashoffset:-3}}.map.is-paused .link-flow{animation-play-state:paused}.map-hub{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);text-align:center;display:grid;gap:2px;pointer-events:none}.hub-title{font-weight:650}.hub-sub{font-size:.75rem;color:var(--muted)}.node{--c: var(--idle);position:absolute;transform:translate(-50%,-50%);display:grid;justify-items:center;gap:4px;width:clamp(88px,17%,142px);padding:10px 6px;font:inherit;color:var(--text);text-align:center;cursor:pointer;background:var(--panel-2);border:1.5px solid var(--line);border-radius:16px;transition:border-color .2s,box-shadow .2s,transform .2s}.node:hover{transform:translate(-50%,-50%) scale(1.05);border-color:var(--c)}.node.is-selected{border-color:var(--c);box-shadow:0 0 0 3px color-mix(in srgb,var(--c) 25%,transparent),0 8px 28px #0006}.node-icon{color:var(--c);display:grid;place-items:center}.node-label{font-weight:600;font-size:.95rem}.node-meta{font-size:.7rem;color:var(--muted);display:inline-flex;align-items:center;gap:5px}.status-healthy{--c: var(--ok)}.status-degraded{--c: var(--warn)}.status-running{--c: var(--accent)}.status-idle,.status-unknown{--c: var(--idle)}.dot{width:7px;height:7px;border-radius:50%;background:var(--c);display:inline-block}.node.status-running .dot,.pill.status-running .dot{animation:pulse 1s ease-in-out infinite}.node.status-running{box-shadow:0 0 22px color-mix(in srgb,var(--accent) 45%,transparent)}@keyframes pulse{50%{transform:scale(1.7);opacity:.5}}.inspector-head{display:flex;align-items:center;gap:12px;margin-bottom:10px}.inspector-head>div{flex:1;min-width:0}.inspector-icon{width:46px;height:46px;border-radius:12px;display:grid;place-items:center;background:var(--panel-2);color:var(--accent);border:1px solid var(--line)}.pill{display:inline-flex;align-items:center;gap:6px;font-size:.75rem;padding:4px 10px;border-radius:999px;color:var(--c);background:color-mix(in srgb,var(--c) 14%,transparent)}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:14px}.metrics div{background:var(--panel-2);border:1px solid var(--line);border-radius:12px;padding:10px}.metrics dt{font-size:.7rem;color:var(--muted)}.metrics dd{font-size:1.05rem;font-weight:650;margin-top:2px;font-variant-numeric:tabular-nums}.tools{display:grid;gap:8px}.tools a{display:grid;gap:2px;padding:10px 12px;text-decoration:none;color:inherit;background:var(--panel-2);border:1px solid var(--line);border-radius:12px;transition:border-color .15s,transform .15s}.tools a:hover{border-color:var(--accent);transform:translate(2px)}.tool-name{display:inline-flex;align-items:center;gap:6px;font-weight:600;font-size:.9rem}.tool-name svg{color:var(--accent)}.tool-role{font-size:.78rem;color:var(--muted)}.segmented{display:inline-flex;background:var(--panel-2);border:1px solid var(--line);border-radius:10px;padding:3px}.segmented button{font:inherit;font-size:.8rem;color:var(--muted);background:none;border:0;padding:6px 12px;min-height:30px;border-radius:7px;cursor:pointer}.segmented button.is-active{background:var(--accent);color:#06101f;font-weight:600}.chart-svg{width:100%;height:auto;display:block}.grid{stroke:var(--line);stroke-width:1}.axis{fill:var(--muted);font-size:11px}.bar-ok{fill:var(--accent)}.bar-bad{fill:var(--bad)}.bar:hover .bar-ok{fill:var(--accent-2)}.legend{display:flex;gap:16px;margin-top:8px;font-size:.78rem;color:var(--muted)}.legend span{display:inline-flex;align-items:center;gap:6px}.swatch{width:10px;height:10px;border-radius:3px;display:inline-block}.swatch.ok{background:var(--accent)}.swatch.bad{background:var(--bad)}.feed ul{display:grid;gap:12px}.feed li{display:grid;grid-template-columns:32px 1fr;gap:10px;align-items:start;font-size:.875rem}.feed-icon{width:32px;height:32px;border-radius:9px;display:grid;place-items:center;background:var(--panel-2);border:1px solid var(--line);color:var(--accent)}.toasts{position:fixed;right:16px;bottom:16px;display:grid;gap:8px;z-index:10;max-width:calc(100vw - 32px)}.toast{background:var(--panel-2);border:1px solid var(--line);border-left:3px solid var(--accent);padding:10px 14px;border-radius:10px;font-size:.85rem;box-shadow:0 10px 30px #00000073;animation:toast-in .25s ease-out}.toast.tone-success{border-left-color:var(--ok)}.toast.tone-warn{border-left-color:var(--warn)}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}}@media(max-width:1024px){.shell{grid-template-columns:1fr}.sidebar{position:static;height:auto;flex-direction:row;flex-wrap:wrap;align-items:center;border-right:0;border-bottom:1px solid var(--line);padding:10px 16px}.nav-list{display:flex;overflow-x:auto;flex:1 1 100%;order:3}.workspace-card{margin:0 0 0 auto}.kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.split,.split-b{grid-template-columns:1fr}}@media(max-width:640px){.content{padding:12px 16px 40px}.hide-sm{display:none}.actions{width:100%}.actions .btn{flex:1 1 auto}.kpi-value{font-size:1.4rem}.metrics{grid-template-columns:1fr}.node{width:25%;padding:8px 4px}.node-purpose{display:none}.node-label{font-size:.85rem}.map-hub .hub-sub{display:none}}@media(max-width:400px){.kpis{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}.link-flow{stroke-dasharray:none}}.sidebar{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;gap:18px;padding:20px 14px;background:#080d18b3;border-right:1px solid var(--line)}.nav-list{display:grid;gap:2px}.nav-item{display:block;text-decoration:none;width:100%;text-align:left;font:inherit;font-size:.9rem;color:var(--muted);background:none;border:0;padding:9px 12px;min-height:40px;border-radius:10px;cursor:pointer;white-space:nowrap}.nav-item:hover{background:var(--panel-2);color:var(--text)}.node-purpose{font-size:.7rem;line-height:1.25;color:var(--muted)}.flow-metrics{grid-template-columns:repeat(2,1fr);margin-top:14px}.flow-metrics+.metrics{margin-top:8px}.search-input{width:100%;font:inherit;color:var(--text);background:var(--panel-2);border:1px solid var(--line);border-radius:10px;padding:9px 12px;min-height:40px;margin-bottom:10px}.search-input::placeholder{color:var(--muted)}.tool-rows{display:grid;gap:6px;max-height:280px;overflow-y:auto}.tool-rows button{width:100%;display:flex;justify-content:space-between;align-items:center;gap:10px;text-align:left;font:inherit;font-size:.85rem;color:var(--text);background:var(--panel-2);border:1px solid var(--line);border-radius:10px;padding:8px 10px;min-height:40px;cursor:pointer}.tool-rows button:hover{border-color:var(--accent)}.tag{flex:none;font-size:.7rem;padding:2px 8px;border-radius:999px;color:var(--accent);background:#38bdf81f}.empty{padding:8px 2px}.workspace-card{display:grid;gap:2px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--panel-2);font-size:.85rem;overflow-wrap:anywhere}.conn-banner{--t: var(--idle);display:grid;gap:6px;margin-bottom:16px;padding:12px 14px;border-radius:12px;border:1px solid color-mix(in srgb,var(--t) 55%,transparent);background:color-mix(in srgb,var(--t) 10%,transparent);font-size:.85rem}.conn-banner.tone-ok{--t: var(--ok)}.conn-banner.tone-warn{--t: var(--warn)}.conn-banner.tone-bad{--t: var(--bad)}.conn-main{display:flex;flex-wrap:wrap;gap:8px;align-items:baseline}.conn-main strong{color:var(--t)}.conn-dot{width:9px;height:9px;border-radius:50%;background:var(--t);align-self:center}.tone-ok .conn-dot{animation:pulse 2s ease-in-out infinite}.conn-detail,.conn-meta{color:var(--muted)}.conn-meta{display:flex;flex-wrap:wrap;gap:8px}.conn-chips{display:flex;flex-wrap:wrap;gap:6px}.chip{font-size:.72rem;padding:2px 9px;border-radius:999px;border:1px solid var(--line);background:var(--panel-2)}.chip.state-connected{border-color:color-mix(in srgb,var(--ok) 60%,transparent)}.chip.state-auth_failed{border-color:color-mix(in srgb,var(--bad) 60%,transparent)}.chip.state-unavailable{border-color:color-mix(in srgb,var(--warn) 60%,transparent)}.empty-note{padding:10px 12px;border:1px dashed var(--line);border-radius:10px;color:var(--muted);font-size:.85rem;margin-top:8px}.build-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}.build-card{--c: var(--idle);display:grid;gap:4px;padding:12px;text-decoration:none;color:inherit;background:var(--panel-2);border:1px solid var(--line);border-left:3px solid var(--c);border-radius:12px;transition:border-color .15s,transform .15s}a.build-card:hover{border-color:var(--c);transform:translateY(-1px)}.build-top{display:flex;justify-content:space-between;align-items:center;gap:8px}.build-name{overflow-wrap:anywhere}.build-card .pill{flex:none}.rows{display:grid;gap:8px}.rows li{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;padding:8px 10px;background:var(--panel-2);border:1px solid var(--line);border-radius:10px;font-size:.875rem}.row-main{display:grid;min-width:0;overflow-wrap:anywhere}.metric-line{fill:none;stroke:var(--accent);stroke-width:2;stroke-linejoin:round}.link-list{display:grid;gap:4px;font-size:.85rem}a{color:var(--accent)}.feed a{color:inherit}.feed a:hover{color:var(--accent)}.node.is-changed{animation:node-flash 1.4s ease-out}@keyframes node-flash{0%{box-shadow:0 0 color-mix(in srgb,var(--c) 70%,transparent)}to{box-shadow:0 0 0 18px transparent}}.integ-note{margin-bottom:12px}.integ-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:10px}.integ{display:grid;gap:6px;padding:12px;background:var(--panel-2);border:1px solid var(--line);border-radius:12px;align-content:start}.integ-head{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}.integ summary{cursor:pointer;font-size:.82rem;color:var(--accent);min-height:28px}.integ details ol{margin:6px 0 6px 18px;display:grid;gap:4px;color:var(--muted)}code{font-size:.78rem;padding:1px 6px;margin:0 4px 4px 0;border-radius:6px;background:var(--bg);border:1px solid var(--line);display:inline-block}
