@property --fb-ang{syntax:"<angle>";inherits:false;initial-value:0deg}@keyframes fb-orbit{to{--fb-ang:360deg}}@keyframes fb-land{0%{--fb-ang:-70deg;opacity:0}18%{opacity:1}to{--fb-ang:290deg;opacity:0}}@keyframes fb-run{0%{transform:translate(-100%)}to{transform:translate(223%)}}@keyframes fb-rail{0%{transform:translate(-100%)}to{transform:translate(290%)}}@keyframes fb-breathe{0%,to{opacity:.5}50%{opacity:1}}@keyframes fb-enter{0%{opacity:0;filter:blur(2px);transform:translateY(2px)scale(.98)}to{opacity:1;filter:none;transform:none}}:where(html:not([data-window=hub])){--fb-s1:#44d62c;--fb-s2:#52e3b0;--fb-s3:#5ad7f0;--fb-s4:#8aa8ff;--fb-spectrum:linear-gradient(90deg, var(--fb-s1), var(--fb-s2) 34%, var(--fb-s3) 66%, var(--fb-s4));--fb-spectrum-v:linear-gradient(180deg, var(--fb-s1), var(--fb-s2) 34%, var(--fb-s3) 66%, var(--fb-s4));--fb-body:#0a0d14ed;--fb-sky:radial-gradient(120% 90% at 50% -30%, #ffffff1a, transparent 60%);--fb-ink:#f3f6fb;--fb-ink-2:#f3f6fbb8;--fb-ink-3:#f3f6fb75;--fb-coral:#ff8f80;--fb-travel:cubic-bezier(.22, 1, .36, 1);--fb-grain:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}:where(html:not([data-window=hub])) .flowbar{isolation:isolate;box-sizing:border-box;width:100%;height:100%;color:var(--fb-ink);font-family:var(--font-sans);background:var(--fb-sky), var(--fb-body);background-clip:padding-box;border:1px solid #0000008c;border-radius:999px;justify-content:center;align-items:center;padding:0 12px;display:flex;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff38,inset 0 0 0 1px #ffffff17}:where(html:not([data-window=hub])) .flowbar:before{content:"";z-index:-1;border-radius:inherit;background-image:var(--fb-grain);opacity:.07;mix-blend-mode:overlay;pointer-events:none;position:absolute;inset:0}:where(html:not([data-window=hub])) .flowbar:after{content:"";border-radius:inherit;pointer-events:none;background:conic-gradient(from var(--fb-ang), transparent 0 58%, var(--fb-s1) 70%, var(--fb-s3) 80%, var(--fb-s4) 88%, transparent 96%);-webkit-mask-composite:xor;opacity:0;padding:1px;transition:opacity .4s;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}:where(html:not([data-window=hub])) .flowbar[data-live=true]{background:var(--fb-sky), radial-gradient(70% 140% at 50% calc(150% - 60% * var(--level,0)), color-mix(in srgb, var(--fb-s3) calc(10% + 34% * var(--level,0)), transparent), transparent 70%), radial-gradient(50% 120% at 12% 120%, color-mix(in srgb, var(--fb-s1) calc(8% + 24% * var(--level,0)), transparent), transparent 70%), radial-gradient(50% 120% at 88% 120%, color-mix(in srgb, var(--fb-s4) calc(8% + 26% * var(--level,0)), transparent), transparent 70%), var(--fb-body);background-clip:padding-box}:where(html:not([data-window=hub])) .flowbar[data-live=true]:after{opacity:calc(.55 + .45 * var(--level,0));animation:3.2s linear infinite fb-orbit}:where(html:not([data-window=hub])) .flowbar[data-mode=failed],:where(html:not([data-window=hub])) .flowbar[data-mode=enginefail]{background:radial-gradient(60% 160% at 0% 50%, #ff8f8029, transparent 70%), var(--fb-sky), var(--fb-body);background-clip:padding-box}:where(html:not([data-window=hub])) .flowbar[data-mode=notice]{background:radial-gradient(60% 160% at 0% 50%, #5ad7f021, transparent 70%), var(--fb-sky), var(--fb-body);background-clip:padding-box}:where(html:not([data-window=hub])) .flowbar[data-confirm=true]:after{background:conic-gradient(from var(--fb-ang), transparent 0 40%, var(--fb-s1) 55%, var(--fb-s2) 65%, var(--fb-s3) 75%, var(--fb-s4) 85%, transparent 98%);animation:fb-land .48s var(--fb-travel) 1 both}:where(html:not([data-window=hub])) .flowbar[data-mini=true]{padding:0 7px}:where(html:not([data-window=hub])) .flowbar[data-column=true]{flex-direction:column;padding:8px 0}:where(html:not([data-window=hub])) .flowbar-body{min-width:0;min-height:0;animation:fb-enter .22s var(--fb-travel) both;flex:1;justify-content:center;align-items:center;gap:9px;display:flex}:where(html:not([data-window=hub])) .flowbar[data-column=true] .flowbar-body{flex-direction:column;width:100%}:where(html:not([data-window=hub])) .flowbar-mark{flex:none;align-items:center;gap:3px;height:16px;display:flex}:where(html:not([data-window=hub])) .flowbar-mark i{background:var(--fb-spectrum);background-size:39px 100%;background-position:calc(var(--k) * -6px) 0;width:3px;height:100%;transform:scaleY(var(--h));filter:grayscale()brightness(1.45);opacity:.62;transition:transform .45s var(--fb-travel), filter .3s ease, opacity .3s ease;border-radius:2px;display:block}:where(html:not([data-window=hub])) .flowbar:hover .flowbar-go .flowbar-mark i,:where(html:not([data-window=hub])) .flowbar-go:focus-visible .flowbar-mark i,:where(html:not([data-window=hub])) .flowbar[data-confirm=true] .flowbar-mark i{filter:none;opacity:1;transform:scaleY(calc(var(--h) * 1.06 + .04))}:where(html:not([data-window=hub])) .flowbar[data-mini=true] .flowbar-mark{gap:2px;height:10px}:where(html:not([data-window=hub])) .flowbar[data-mini=true] .flowbar-mark i{background-size:26px 100%;background-position:calc(var(--k) * -4px) 0;width:2px}:where(html:not([data-window=hub])) .flowbar[data-column=true] .flowbar-mark{flex-direction:column;width:16px;height:auto}:where(html:not([data-window=hub])) .flowbar[data-column=true] .flowbar-mark i{background:var(--fb-spectrum-v);background-size:100% 39px;background-position:0 calc(var(--k) * -6px);width:100%;height:3px;transform:scaleX(var(--h))}:where(html:not([data-window=hub])) .flowbar[data-column=true][data-mini=true] .flowbar-mark{width:10px}:where(html:not([data-window=hub])) .flowbar[data-column=true][data-mini=true] .flowbar-mark i{background-size:100% 26px;background-position:0 calc(var(--k) * -4px);height:2px}:where(html:not([data-window=hub])) .flowbar[data-working=true] .flowbar-mark{animation:1.6s ease-in-out infinite fb-breathe}:where(html:not([data-window=hub])) .flowbar-go{cursor:pointer;border-radius:999px;justify-content:center;align-items:center;margin:-6px -12px;padding:6px 12px;display:inline-flex}:where(html:not([data-window=hub])) .flowbar-go:focus-visible{outline:1.5px solid var(--fb-s3);outline-offset:-3px}:where(html:not([data-window=hub])) .flowbar-wave{--fb-bars:26;--fb-pitch:5px;flex:1;min-width:0;height:20px}:where(html:not([data-window=hub])) .flowbar-wave .wave{gap:2.5px}:where(html:not([data-window=hub])) .flowbar-wave .wave-bar{background:var(--fb-spectrum);background-size:calc(var(--fb-bars) * var(--fb-pitch)) 100%;background-position:calc(var(--k) * var(--fb-pitch) * -1) 0;width:2.5px}:where(html:not([data-window=hub])) .flowbar[data-mini=true] .flowbar-wave{--fb-bars:9;--fb-pitch:4px;height:12px}:where(html:not([data-window=hub])) .flowbar[data-mini=true] .flowbar-wave .wave{gap:2px}:where(html:not([data-window=hub])) .flowbar[data-mini=true] .flowbar-wave .wave-bar{width:2px}:where(html:not([data-window=hub])) .flowbar[data-column=true] .flowbar-wave{--fb-bars:10;--fb-pitch:5px;width:18px;height:auto;min-height:0}:where(html:not([data-window=hub])) .flowbar[data-column=true] .flowbar-wave .wave{flex-direction:column}:where(html:not([data-window=hub])) .flowbar[data-column=true] .flowbar-wave .wave-bar{background:var(--fb-spectrum-v);background-size:100% calc(var(--fb-bars) * var(--fb-pitch));background-position:0 calc(var(--k) * var(--fb-pitch) * -1);width:100%;height:2.5px;transform:scaleX(var(--v,.05))}:where(html:not([data-window=hub])) .flowbar[data-column=true][data-mini=true] .flowbar-wave{width:10px}:where(html:not([data-window=hub])) .flowbar-time{font:500 12px/1 var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:-.01em;color:var(--fb-ink-2);flex:none}:where(html:not([data-window=hub])) .flowbar-lock{width:14px;height:14px;color:var(--fb-s3);flex:none;place-items:center;display:grid}:where(html:not([data-window=hub])) .flowbar-lock svg{width:14px;height:14px}:where(html:not([data-window=hub])) .flowbar-cancel{width:22px;height:22px;color:var(--fb-ink-3);cursor:pointer;background:#ffffff0f;border-radius:999px;flex:none;place-items:center;transition:color .12s,background-color .12s;display:grid;box-shadow:inset 0 0 0 1px #ffffff14}:where(html:not([data-window=hub])) .flowbar-cancel svg{width:12px;height:12px}:where(html:not([data-window=hub])) .flowbar-cancel:hover{color:var(--fb-ink);background:#ffffff21}:where(html:not([data-window=hub])) .flowbar-cancel:focus-visible{outline:1.5px solid var(--fb-s3);outline-offset:1px}:where(html:not([data-window=hub])) .flowbar-thread-wrap{flex:1;align-items:center;gap:10px;min-width:0;display:flex}:where(html:not([data-window=hub])) .flowbar-label{font:400 12px/1 var(--font-sans);color:var(--fb-ink-2);flex:none}:where(html:not([data-window=hub])) .flowbar-thread{background:#ffffff1f;border-radius:2px;flex:1;height:2px;position:relative;overflow:hidden}:where(html:not([data-window=hub])) .flowbar-thread:after{content:"";background:linear-gradient(90deg, transparent, var(--fb-s1), var(--fb-s3), var(--fb-s4), transparent);width:45%;animation:1.15s cubic-bezier(.6,0,.4,1) infinite fb-run;position:absolute;top:0;bottom:0;left:0}:where(html:not([data-window=hub])) .flowbar-icon{width:16px;height:16px;color:var(--fb-ink-2);flex:none;place-items:center;display:grid}:where(html:not([data-window=hub])) .flowbar-icon svg{width:15px;height:15px}:where(html:not([data-window=hub])) .flowbar-icon[data-icon=warn]{color:var(--fb-coral)}:where(html:not([data-window=hub])) .flowbar-icon[data-icon=clipboard],:where(html:not([data-window=hub])) .flowbar-icon[data-icon=model]{color:var(--fb-s3)}:where(html:not([data-window=hub])) .flowbar-msg{white-space:nowrap;text-overflow:ellipsis;min-width:0;font:400 12px/1.3 var(--font-sans);color:var(--fb-ink);flex:1;overflow:hidden}:where(html:not([data-window=hub])) .flowbar-pct{font:500 12px/1 var(--font-mono);font-variant-numeric:tabular-nums;color:var(--fb-ink-2);flex:none}:where(html:not([data-window=hub])) .flowbar-action{flex:none;align-items:center;display:inline-flex}:where(html:not([data-window=hub])) .flowbar-btn{height:24px;font:600 11.5px/1 var(--font-sans);color:#07121a;white-space:nowrap;cursor:pointer;background:linear-gradient(#fff,#dfe6ef);border-radius:999px;align-items:center;gap:6px;padding:0 10px;transition:background-color .12s;display:inline-flex;box-shadow:inset 0 -1px #0000001f}:where(html:not([data-window=hub])) .flowbar-btn kbd{font:600 10px/1 var(--font-mono);opacity:.55}:where(html:not([data-window=hub])) .flowbar-btn:hover{background:#fff}:where(html:not([data-window=hub])) .flowbar-btn:focus-visible{outline:1.5px solid var(--fb-s3);outline-offset:2px}:where(html:not([data-window=hub])) .flowbar-rail{background:#ffffff14;border-radius:2px;height:1.5px;position:absolute;bottom:2px;left:14px;right:14px;overflow:hidden}:where(html:not([data-window=hub])) .flowbar-rail-fill{width:var(--p,0%);background:var(--fb-spectrum);transition:width .32s var(--fb-travel);position:absolute;top:0;bottom:0;left:0}:where(html:not([data-window=hub])) .flowbar-rail[data-indeterminate=true] .flowbar-rail-fill{width:35%;animation:1.6s cubic-bezier(.6,0,.4,1) infinite fb-rail}:where(html:not([data-window=hub])) .flowbar[data-mini=true] .flowbar-rail,:where(html:not([data-window=hub])) .flowbar[data-column=true] .flowbar-rail{bottom:1px;left:6px;right:6px}@media (prefers-reduced-motion:reduce){:where(html:not([data-window=hub])) .flowbar-body,:where(html:not([data-window=hub])) .flowbar[data-live=true]:after,:where(html:not([data-window=hub])) .flowbar[data-confirm=true]:after,:where(html:not([data-window=hub])) .flowbar[data-working=true] .flowbar-mark,:where(html:not([data-window=hub])) .flowbar-thread:after,:where(html:not([data-window=hub])) .flowbar-rail[data-indeterminate=true] .flowbar-rail-fill{animation:none}:where(html:not([data-window=hub])) .flowbar-mark i,:where(html:not([data-window=hub])) .flowbar-rail-fill{transition:none}:where(html:not([data-window=hub])) .flowbar-thread:after{left:27%}}:where(html:not([data-window=hub])) .wave{justify-content:center;align-items:center;gap:2px;width:100%;height:100%;display:flex;overflow:hidden}:where(html:not([data-window=hub])) .wave-bar{width:2px;height:100%;transform:scaleY(var(--v,.05));transform-origin:50%;will-change:transform;backface-visibility:hidden;background:#44d62c;border-radius:999px;flex:none}
