.demo-cq{container-type:inline-size}.heal{--h-pad:clamp(12px, 2.4vw, 20px);padding:var(--h-pad);color:var(--ink);gap:14px;display:grid}.heal .heal-bar{flex-wrap:wrap;justify-content:space-between;gap:10px;display:flex}.heal .heal-faults,.heal .heal-ctl{flex-wrap:wrap;gap:8px;display:flex}.heal .heal-guard{align-items:center;gap:8px;display:inline-flex}.heal .heal-guard-dot{background:var(--ok);width:8px;height:8px;box-shadow:0 0 0 3px color-mix(in srgb, var(--ok) 25%, transparent);border-radius:50%}.heal[data-guard=off] .heal-guard{border-color:var(--bad);color:var(--bad)}.heal[data-guard=off] .heal-guard-dot{background:var(--bad);box-shadow:0 0 0 3px color-mix(in srgb, var(--bad) 25%, transparent)}.heal .heal-auto{color:var(--muted);align-items:center;gap:8px;margin:-4px 0 0;font-size:11px;display:flex}.heal .heal-auto[data-on=true]:before{content:"";background:var(--accent);border-radius:50%;width:6px;height:6px;animation:1.4s ease-in-out infinite heal-blink}.heal .heal-grid{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:14px;display:grid}.heal .heal-panel{background:var(--panel);border:1px solid var(--line);border-radius:6px;min-width:0;padding:14px;position:relative}.heal .heal-h{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:12px;display:flex}.heal .heal-h h3{color:var(--ink-2);margin:0;font-weight:500}.heal .heal-mode{color:var(--muted);font-size:11px}.heal[data-guard=off] [data-mode]{color:var(--bad)}.heal .heal-legend{color:var(--muted);flex-wrap:wrap;gap:10px;margin:0;padding:0;font-size:10px;list-style:none;display:flex}.heal .heal-legend li:before{content:"";background:var(--c);border-radius:2px;width:7px;height:7px;margin-right:5px;display:inline-block}.heal :where(.heal-legend li),.heal .pod{--c:var(--ok)}.heal [data-k=hot],.heal .pod[data-status=hot],.heal .pod[data-status=degraded]{--c:var(--warn)}.heal [data-k=crashloop],.heal .pod[data-status=crashloop]{--c:var(--bad)}.heal [data-k=restarting],.heal .pod[data-status=restarting],.heal .pod[data-status=pending]{--c:var(--info)}.heal [data-k=down],.heal .pod[data-status=down]{--c:var(--muted)}.heal .heal-nodes{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.heal .heal-node{border:1px solid var(--line);background:var(--bg-2);border-radius:4px;min-width:0;padding:8px;transition:border-color .3s,opacity .3s}.heal .heal-node[data-down=true]{border-color:color-mix(in srgb, var(--bad) 45%, var(--line));background:repeating-linear-gradient(-45deg, var(--bg-2) 0 6px, color-mix(in srgb, var(--bg-2) 70%, var(--line)) 6px 12px)}.heal .heal-node-h{color:var(--ink-2);justify-content:space-between;gap:4px;margin-bottom:8px;font-size:10px;display:flex}.heal .heal-node-st{color:var(--ok)}.heal .heal-node[data-down=true] .heal-node-st{color:var(--bad)}.heal .heal-pods{gap:6px;margin:0;padding:0;list-style:none;display:grid}.heal .pod{border:1px solid color-mix(in srgb, var(--c) 28%, var(--line));background:color-mix(in srgb, var(--c) 7%, transparent);font-family:var(--font-mono);transition:border-color .35s var(--ease-out), background-color .35s var(--ease-out);border-radius:3px;grid-template-columns:8px minmax(0,1fr) auto;grid-template-areas:"dot dep ver""dot name st";align-items:center;column-gap:7px;padding:7px 8px;font-size:10.5px;line-height:1.35;display:grid}.heal .pod-dot{background:var(--c);border-radius:2px;grid-area:dot;align-self:stretch;width:3px;transition:background-color .35s}.heal .pod-dep{color:var(--ink);grid-area:dep}.heal .pod-name{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;grid-area:name;overflow:hidden}.heal .pod-ver{color:var(--muted);grid-area:ver;justify-self:end}.heal .pod-st{color:var(--c);text-transform:uppercase;letter-spacing:.05em;grid-area:st;justify-self:end;font-size:9px}.heal .pod[data-status=crashloop]{animation:.9s ease-in-out infinite heal-crash}.heal .pod[data-status=restarting] .pod-dot,.heal .pod[data-status=pending] .pod-dot{animation:.7s linear infinite heal-blink}.heal .pod[data-status=down]{opacity:.55}.heal .heal-metrics{grid-template-columns:auto auto minmax(0,1fr);align-items:end;gap:6px 18px;margin-top:14px;display:grid}.heal .heal-metric{display:grid}.heal .heal-metric span{color:var(--muted);font-size:10px}.heal .heal-metric strong{font-family:var(--font-display);letter-spacing:.01em;font-variant-numeric:tabular-nums;color:var(--ok);font-size:clamp(28px,4vw,40px);font-weight:400;line-height:1;transition:color .3s}.heal[data-health=warn] .heal-metric strong{color:var(--warn)}.heal[data-health=bad] .heal-metric strong{color:var(--bad)}.heal .heal-spark{--c:var(--ok);width:100%;height:56px;overflow:visible}.heal[data-health=warn] .heal-spark{--c:var(--warn)}.heal[data-health=bad] .heal-spark{--c:var(--bad)}.heal .spark-line{fill:none;stroke:var(--c);stroke-width:1.6px;vector-effect:non-scaling-stroke;stroke-linejoin:round;transition:stroke .3s}.heal .spark-area{fill:color-mix(in srgb, var(--c) 12%, transparent)}.heal .spark-slo{stroke:var(--line-2);stroke-dasharray:3 3;vector-effect:non-scaling-stroke}.heal .heal-spark-cap{color:var(--muted);text-align:right;grid-column:1/-1;font-size:10px}.heal .sm{flex-wrap:wrap;gap:6px 18px;margin:0;padding:0;list-style:none;display:flex}.heal .sm-s{font-family:var(--font-mono);letter-spacing:.03em;text-transform:uppercase;border:1px solid var(--line-2);color:var(--muted);background:var(--bg-2);border-radius:3px;padding:7px 10px;font-size:11.5px;transition:color .25s,border-color .25s,background-color .25s,box-shadow .25s,opacity .25s;position:relative;overflow:hidden}.heal .sm>.sm-s:not(:last-child):after{content:"→";color:var(--line-2);position:absolute;top:50%;right:-15px;transform:translateY(-50%)}.heal .sm>.sm-s{overflow:visible}.heal .sm-s.is-visited{color:var(--ink-2);border-color:var(--muted)}.heal .sm-s.is-current{color:var(--accent-ink);background:var(--ink);border-color:var(--ink);box-shadow:0 0 0 4px color-mix(in srgb, var(--ink) 12%, transparent)}.heal .sm-s[data-state=close].is-current{background:var(--ok);border-color:var(--ok)}.heal .sm-s[data-state=gate]{border-style:dashed}.heal .sm-hold{background:var(--accent);transform-origin:0;width:100%;height:2px;position:absolute;bottom:0;left:0;transform:scaleX(0)}.heal[data-guard=off] .sm-s[data-skip=naive]{opacity:.35;border-style:dashed;text-decoration:line-through}.heal[data-guard=off] .sm-branch{opacity:.35}.heal[data-guard=off] .sm-s[data-state=act].is-current{background:var(--bad);border-color:var(--bad)}.heal .sm-branch{flex-wrap:wrap;gap:8px;margin-top:10px;transition:opacity .25s;display:flex}.heal .sm-esc{border-color:color-mix(in srgb, var(--accent) 35%, var(--line));align-items:baseline;gap:8px;display:inline-flex}.heal .sm-esc small{text-transform:none;color:var(--muted);font-size:10px}.heal .sm-esc.is-current{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.heal .sm-esc.is-current small{color:var(--accent-ink)}.heal .sm-now{min-height:3em;color:var(--ink-2);margin:12px 0 0;font-size:14px}.heal .heal-stats{background:var(--line);border:1px solid var(--line);border-radius:4px;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin:12px 0 0;display:grid;overflow:hidden}.heal .heal-stats div{background:var(--panel);min-width:0;padding:8px 10px}.heal .heal-stats dt{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:9.5px;overflow:hidden}.heal .heal-stats dd{font-family:var(--font-mono);font-variant-numeric:tabular-nums;margin:2px 0 0;font-size:18px}.heal .heal-stats div[data-alarm] dd{color:var(--bad)}.heal .heal-cds{gap:5px;margin-top:12px;display:grid}.heal .heal-cds>span{color:var(--muted);font-size:10px}.heal .heal-cd{color:var(--ink-2);grid-template-columns:70px minmax(0,1fr) 44px;align-items:center;gap:8px;font-size:10.5px;display:grid}.heal .heal-cd b{text-align:right;color:var(--muted);font-weight:400}.heal .heal-cd-track{background:var(--line);border-radius:2px;height:3px;overflow:hidden}.heal .heal-cd-track i{background:var(--warn);transform-origin:0;height:100%;display:block;transform:scaleX(0)}.heal .heal-page{background:var(--panel);border:1px solid var(--accent);box-shadow:0 20px 60px var(--shadow), 0 0 0 1px color-mix(in srgb, var(--accent) 25%, transparent);animation:heal-rise .35s var(--ease-out);z-index:2;border-radius:5px;padding:14px;position:absolute;inset:auto 10px 10px}.heal .heal-page[hidden]{display:none}.heal .heal-page-top{color:var(--accent);align-items:center;gap:8px;margin-bottom:6px;display:flex}.heal .heal-page-bell{background:var(--accent);border-radius:50%;width:8px;height:8px;animation:.8s ease-in-out infinite heal-blink}.heal .heal-page strong{font-size:17px;display:block}.heal .heal-page p{color:var(--ink-2);margin:6px 0;font-size:13.5px}.heal .heal-page .mono{text-transform:none;font-size:10.5px}.heal .heal-page-reason{color:var(--accent)!important}.heal .heal-page-prop span{color:var(--ink)}.heal .heal-page-when{color:var(--muted)!important}.heal .heal-page .btn{border-color:var(--accent);margin-top:6px}.heal .heal-log{height:220px;font-family:var(--font-mono);scrollbar-width:thin;scrollbar-color:var(--line-2) transparent;margin:0;padding:0;font-size:11.5px;line-height:1.55;list-style:none;overflow-y:auto}.heal .ev{border-bottom:1px solid color-mix(in srgb, var(--line) 50%, transparent);animation:heal-in .3s var(--ease-out);grid-template-columns:78px 118px minmax(0,1fr);gap:10px;padding:2px 0;display:grid}.heal .ev-t{color:var(--muted);font-variant-numeric:tabular-nums}.heal .ev-n{color:var(--ink-2)}.heal .ev-d{color:var(--ink-2);overflow-wrap:anywhere}.heal .ev-ok .ev-n{color:var(--ok)}.heal .ev-warn .ev-n{color:var(--warn)}.heal .ev-bad .ev-n,.heal .ev-bad .ev-d{color:var(--bad)}.heal .ev-info .ev-n{color:var(--info)}.heal .ev-accent .ev-n{color:var(--accent);font-weight:600}.heal .ev-accent{background:color-mix(in srgb, var(--accent) 7%, transparent)}@keyframes heal-blink{50%{opacity:.25}}@keyframes heal-crash{50%{background-color:color-mix(in srgb, var(--bad) 18%, transparent)}}@keyframes heal-rise{0%{opacity:0;transform:translateY(10px)}}@keyframes heal-in{0%{opacity:0;transform:translate(-4px)}}@container (width<=900px){.heal .heal-grid{grid-template-columns:minmax(0,1fr)}}@container (width<=560px){.heal .heal-faults,.heal .heal-ctl{grid-template-columns:1fr 1fr;width:100%;display:grid}.heal .heal-nodes{gap:5px}.heal .heal-node{padding:6px 5px}.heal .heal-node-h{flex-direction:column;gap:0}.heal .pod{grid-template-columns:3px minmax(0,1fr);grid-template-areas:"dot dep""dot st";column-gap:6px;padding:5px 6px}.heal .pod-name,.heal .pod-ver{display:none}.heal .pod-st{justify-self:start}.heal .heal-metrics{grid-template-columns:auto auto}.heal .heal-spark{grid-column:1/-1}.heal .heal-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.heal .sm{gap:6px 16px}.heal .ev{grid-template-columns:1fr;gap:0;padding:4px 0}.heal .ev-t{font-size:10px}.heal .heal-page{margin-top:12px;position:relative;inset:auto}}
