:root{--bg: #05070c;--panel: rgba(12, 17, 27, .86);--panel-solid: #0c111b;--border: rgba(120, 150, 190, .18);--text: #e6ecf5;--muted: #8c98ad;--ok: #4ade80;--warn: #fac957;--bad: #ff5f56;--sidebar-w: 340px;--topbar-h: 40px;font-synthesis-weight:none}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--text);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;font-size:13px;overflow:hidden}.app{position:relative;height:100%;width:100%}.globe-stage{position:absolute;inset:0 var(--sidebar-w) 0 0}.app.no-sidebar{--sidebar-w: 0px}.hud{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.hud button,.hud input,.hud select,.hud a,.hud .sidebar,.hud .follow-pill,.hud .banner,.hud details{pointer-events:auto}.hud-top{position:absolute;top:0;left:0;right:var(--sidebar-w);height:var(--topbar-h)}.status-bar{display:flex;align-items:center;gap:16px;height:100%;padding:0 14px;background:linear-gradient(180deg,#05070ceb,#05070c00)}.health-axes{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.axis{display:inline-flex;align-items:center;gap:6px;font-variant-numeric:tabular-nums;color:var(--muted);cursor:help;pointer-events:auto;white-space:nowrap}.axis .dot{width:7px;height:7px;border-radius:50%;background:currentColor;flex:none}.axis.ok{color:var(--ok)}.axis.warn{color:var(--warn)}.axis.bad{color:var(--bad)}.axis.ok .dot{box-shadow:0 0 8px #4ade80b3}.axis.bad .dot{animation:pulse 1.4s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.25}}.sparkline{display:flex;align-items:flex-end;gap:1px;height:18px;margin-left:auto;width:180px;opacity:.75;cursor:help;pointer-events:auto}.sparkline i{flex:1;min-width:1px;border-radius:1px 1px 0 0}.gap-banners{position:absolute;top:calc(var(--topbar-h) + 8px);left:14px;right:calc(var(--sidebar-w) + 14px);display:flex;flex-direction:column;gap:8px}.banner{display:flex;align-items:flex-start;gap:12px;padding:10px 12px;border-radius:8px;border:1px solid var(--border);background:var(--panel);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);max-width:620px}.banner.warn{border-color:#fac95773}.banner.error{border-color:#ff5f5680}.banner strong{display:block;margin-bottom:3px}.banner p{margin:0;color:var(--muted);line-height:1.45}.banner button{margin-left:auto;flex:none}.sidebar{position:absolute;top:0;right:0;bottom:0;width:var(--sidebar-w);display:grid;grid-template-rows:auto minmax(0,1fr) auto;background:var(--panel-solid);border-left:1px solid var(--border);overflow:hidden}.sidebar h2{margin:0 0 10px;font-size:11px;letter-spacing:.09em;text-transform:uppercase;color:var(--muted);display:flex;align-items:center;gap:7px}.filters{padding:14px;border-bottom:1px solid var(--border)}.field{display:block;margin-bottom:12px}.field>span{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:5px;color:var(--muted)}.field em{font-style:normal;color:var(--text)}.field input[type=range]{width:100%;accent-color:#59b8e6}.field small{display:block;margin-top:3px;font-size:11px}.segmented{display:flex;gap:4px}.segmented button{flex:1}.severity-key{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px;font-size:11px;color:var(--muted)}.severity-key span{display:inline-flex;align-items:center;gap:4px}.severity-key i{width:8px;height:8px;border-radius:2px}.event-list{display:grid;grid-template-rows:auto minmax(0,1fr);min-height:0}.event-list-head{display:flex;justify-content:space-between;padding:10px 14px;border-bottom:1px solid var(--border);font-size:11px;text-transform:uppercase;letter-spacing:.07em}.event-list-scroll{overflow-y:auto;min-height:0}.event-row{display:flex;align-items:center;gap:8px;width:100%;padding:0 14px;border:0;border-bottom:1px solid rgba(120,150,190,.07);background:transparent;color:var(--text);font:inherit;text-align:left;cursor:pointer}.event-row:hover{background:#78a0c817}.event-row.selected{background:#59b8e629;box-shadow:inset 2px 0 #59b8e6}.sev-dot{width:8px;height:8px;border-radius:50%;flex:none}.row-label{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.row-mag,.row-age{color:var(--muted);font-variant-numeric:tabular-nums;flex:none}.row-mag{min-width:30px;text-align:right}.row-age{min-width:34px;text-align:right}.empty{padding:20px 14px;color:var(--muted)}.detail{padding:14px;border-top:1px solid var(--border);max-height:42%;overflow-y:auto}.detail.empty-detail{padding:12px 14px}.detail h2{text-transform:none;letter-spacing:0;font-size:13px;color:var(--text)}.detail dl{display:grid;grid-template-columns:auto 1fr;gap:4px 12px;margin:0}.detail dt{color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.05em;align-self:center}.detail dd{margin:0;font-variant-numeric:tabular-nums}.detail details{margin-top:10px}.detail summary{cursor:pointer;color:var(--muted)}.detail pre{margin:6px 0 0;padding:8px;background:#00000059;border-radius:6px;overflow-x:auto}.follow-pill{position:absolute;bottom:22px;left:calc((100% - var(--sidebar-w)) / 2);transform:translate(-50%);display:flex;align-items:center;gap:9px;padding:7px 12px;border-radius:999px;border:1px solid var(--border);background:var(--panel);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--muted);white-space:nowrap}.follow-pill.active{color:var(--text);border-color:#59b8e680}.follow-pill.paused{color:var(--warn);border-color:#fac95780}.follow-pill.inspecting{color:#8ef0ff;border-color:#8ef0ff66}.pill-icon{font-size:11px}.countdown{width:14px;height:14px;border-radius:50%;background:conic-gradient(var(--warn) calc(var(--progress) * 360deg),rgba(255,255,255,.14) 0);flex:none}.legend{position:absolute;bottom:18px;left:16px;display:flex;flex-direction:column;gap:5px;font-size:11px;color:var(--muted)}.legend-item{display:inline-flex;align-items:center;gap:6px}.legend-item i{width:12px;height:12px;border-radius:50%;border:1.5px solid currentColor;flex:none}.legend-item .ring-p{color:#5ad7ff}.legend-item .ring-s{color:#ff8a3d}.age-ramp i{width:46px;height:6px;border:0;border-radius:3px;background:linear-gradient(90deg,#59b8e6,#59b8e61f)}.legend-note{opacity:.65;font-style:italic}.muted{color:var(--muted)}.mono{font-family:ui-monospace,Cascadia Code,Consolas,monospace}.small{font-size:11px}button{padding:4px 9px;border-radius:5px;border:1px solid var(--border);background:#78a0c81a;color:var(--text);font:inherit;font-size:12px;cursor:pointer}button:hover{background:#78a0c838}button.active{background:#59b8e647;border-color:#59b8e699}::-webkit-scrollbar{width:9px}::-webkit-scrollbar-thumb{background:#7896be47;border-radius:5px}@media(max-width:900px){:root{--sidebar-w: 0px}.sidebar{display:none}}.conversation{position:absolute;inset:0 var(--sidebar-w) 0 0;pointer-events:none;overflow:hidden;transition:opacity .6s ease}.conversation.fading{opacity:0}.conversation-lines{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;overflow:visible;transition:opacity .2s ease}.conversation-lines.occluded{opacity:0}.connector path{fill:none;stroke:#8ef0ffd9;stroke-width:1.4;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1;filter:drop-shadow(0 0 3px rgba(90,215,255,.75));transition:stroke-dashoffset .45s ease-out}.connector.manager path{stroke:#a7f3c0d9;filter:drop-shadow(0 0 3px rgba(74,222,128,.6))}.connector .anchor{fill:#c9f9ff;opacity:0;transition:opacity .2s ease .38s}.connector.manager .anchor{fill:#c8f7d8}.connector:not(.is-hidden) path{stroke-dashoffset:0}.connector:not(.is-hidden) .anchor{opacity:1}.conversation-origin{fill:none;stroke:#ff4545;stroke-width:1.5;transform-box:fill-box;transform-origin:center;animation:conversation-pulse 1.6s ease-out infinite}@keyframes conversation-pulse{0%{transform:scale(.6);opacity:1}to{transform:scale(1.8);opacity:0}}.talk-bubble{position:absolute;top:0;left:0;width:min(270px,38%);padding:9px 12px 11px;border-radius:12px;border:1px solid rgba(142,240,255,.35);background:#08101ce0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 8px 30px #00000073,0 0 18px #5ad7ff1f;color:var(--text);line-height:1.4;opacity:0;will-change:transform;transition:opacity .26s ease}.talk-bubble.manager{border-color:#a7f3c059;box-shadow:0 8px 30px #00000073,0 0 18px #4ade801a}.talk-bubble.is-typing,.talk-bubble.is-shown{opacity:1}.talk-bubble header{display:flex;align-items:center;gap:7px;margin-bottom:5px;font-size:11px;color:var(--muted)}.talk-bubble .avatar{display:grid;place-items:center;width:20px;height:20px;flex:none;border-radius:50%;background:#5ad7ff2e;color:#8ef0ff;font-size:9px;font-weight:700}.talk-bubble.manager .avatar{background:#4ade8029;color:#a7f3c0}.talk-bubble .avatar svg{width:12px;height:12px}.talk-bubble .who{white-space:nowrap}.talk-bubble .sev-chip{min-width:0;overflow:hidden;text-overflow:ellipsis;margin-left:auto;padding:1px 7px;border-radius:999px;background:#ff454529;color:#ff8a8a;font-size:10px;font-weight:600;white-space:nowrap}.talk-body{margin:0;font-kerning:none;font-variant-ligatures:none}.talk-body .untyped{visibility:hidden}.talk-bubble.is-typing .talk-body .typed{border-right:2px solid #8ef0ff;margin-right:-2px}.talk-bubble.manager.is-typing .talk-body .typed{border-right-color:#a7f3c0}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}@media(prefers-reduced-motion:reduce){.conversation,.conversation-lines,.connector path,.connector .anchor,.talk-bubble{transition:none}.conversation-origin{animation:none}}.loader{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;background:var(--bg);transition:opacity .7s ease}.loader.done{opacity:0;pointer-events:none}.loader-rings{position:absolute;top:0;right:0;bottom:0;left:0;transform:scale(1);transform-origin:center;transition:transform .65s cubic-bezier(.5,0,.75,0),opacity .65s ease-in}.loader-rings.fade{transform:scale(8);opacity:0}.magic-rings-container{width:100%;height:100%}.magic-rings-container canvas{display:block;width:100%!important;height:100%!important}.loader-logo{position:absolute;top:50%;left:50%;width:min(320px,46vw);transform:translate(-50%,-50%) scale(.94);opacity:0;pointer-events:none;transition:opacity .6s ease,transform .7s cubic-bezier(.2,.7,.2,1)}.loader-logo.in{opacity:.97;transform:translate(-50%,-50%) scale(1)}.loader-logo.fade{opacity:0;transform:translate(-50%,-50%) scale(1.5);transition:opacity .55s ease-in,transform .65s cubic-bezier(.5,0,.75,0)}@media(prefers-reduced-motion:reduce){.loader,.loader-logo,.loader-logo.fade{transition-duration:.01ms}}@media(max-width:600px){.follow-pill .pill-detail{display:none}}
