.bt{--navy:#0A192F;--card:#0F2340;--bd:#234A75;--cy:#00D4FF;--cy2:#00C2FF;--dim:#A9B8CC;--ln:#1A3150;--cv:#0B1830;--vi:#B197FC;--vit:#D9CCFF;--gr:#3DDC97;--blue:#3F6A9C;--out:cubic-bezier(.22,1,.36,1);--in:cubic-bezier(.64,0,.78,0);--inout:cubic-bezier(.65,0,.35,1);--pop:cubic-bezier(.34,1.56,.64,1);overflow-x:clip}.bt .bt-title{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;align-items:center}.bt .bt-t{display:grid;gap:4px;min-width:0}.bt .bt-title .meta{grid-column:1}.bt .bt-reset{grid-column:2;grid-row:1;min-height:44px;padding:0 16px}.bt .eyebrow{font:600 11px var(--font-mono, "JetBrains Mono", monospace);letter-spacing:.14em;text-transform:uppercase;color:var(--dim);margin:0}.bt .bt-app{display:grid;gap:12px;grid-template-columns:minmax(0,1fr);grid-template-areas:"goal" "bar" "stage" "panel" "ports";min-width:0}.bt .bt-main,.bt .bt-side{display:contents}.bt .bt-goal{grid-area:goal}.bt .bt-bar{grid-area:bar}.bt .bt-stage{grid-area:stage}.bt .bt-panel{grid-area:panel}.bt .bt-ports{grid-area:ports}@media(min-width:900px){.bt .bt-app{grid-template-columns:minmax(0,1fr) 340px;grid-template-areas:"main goal" "main ports" "main panel" "main .";grid-template-rows:auto auto auto 1fr;align-content:start;align-items:start;gap:16px}.bt .bt-main{display:grid;grid-area:main;gap:12px;align-content:start;min-width:0}.bt .bt-bar,.bt .bt-stage{grid-area:auto}}.bt .bt-card{background:var(--card);border:1px solid var(--bd);border-radius:14px;padding:14px 16px;position:relative;min-width:0}.bt .bt-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px}.bt .hd{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:22px}.bt .pill{display:inline-flex;align-items:center;height:22px;padding:0 9px;border-radius:11px;border:1px solid var(--bd);background:var(--navy);font:600 12px Inter,sans-serif;color:var(--dim);white-space:nowrap}.bt .pill.cy{border-color:var(--cy);color:var(--cy)}.bt .gt{font:700 18px/24px Inter,sans-serif;color:#fff;margin:6px 0 8px}.bt .bt-steps{list-style:none;margin:0;padding:0;display:grid;gap:2px}.bt .st{display:flex;align-items:center;gap:10px;min-height:30px;font:500 14px Inter,sans-serif;color:#e6edf6}.bt .st.later{color:var(--dim)}.bt .st.flag{color:var(--vit)}.bt .tk{flex:none;width:22px;height:22px;border-radius:11px;display:grid;place-items:center;font:700 12px var(--font-mono, monospace);border:1.5px solid #3A5F8C;color:var(--dim)}.bt .tk.done{background:var(--gr);border-color:var(--gr);color:#06281b}.bt .tk.active{border-color:var(--cy);color:var(--cy)}.bt .tk.flag{border-color:var(--vi);color:var(--vit);background:#b197fc24}.bt .spills{display:none;list-style:none;margin:8px 0 0;padding:0;gap:8px}.bt .sp{flex:1;min-width:0;height:36px;border-radius:10px;border:1px solid var(--bd);background:var(--navy);display:flex;align-items:center;justify-content:center;gap:6px;font:600 12px Inter,sans-serif;color:var(--dim);white-space:nowrap;overflow:hidden}.bt .sp.done{border-color:#3ddc9799;color:var(--gr);background:#3ddc9714}.bt .sp.flag{border-color:#6d63a6;color:var(--vit);background:#b197fc1a}.bt .sp.active{border-color:var(--cy);color:#fff}@media(max-width:899px){.bt .bt-steps{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.bt .spills{display:flex}}.bt .prows{list-style:none;margin:8px 0 0;padding:0;display:grid;gap:2px}.bt .prow{all:unset;box-sizing:border-box;width:100%;display:flex;align-items:center;gap:12px;min-height:44px;border-radius:8px;padding:0 8px;cursor:pointer;color:#fff;font:600 14px Inter,sans-serif}.bt .prow:focus-visible{outline:2px solid var(--cy);outline-offset:2px}.bt .prow.sel2{background:#00d4ff14;box-shadow:inset 3px 0 0 var(--cy)}.bt .prow b{min-width:64px}.bt .pt{margin-left:auto;font:500 12px Inter,sans-serif;color:var(--dim);white-space:nowrap}.bt .pt.is-over{color:var(--vit)}.bt .ports{display:flex;gap:4px;margin-top:5px;flex-wrap:wrap}.bt .prow .ports{margin-top:0}.bt .ports s{display:block;width:12px;height:10px;border-radius:2px;border:1px solid #4B6A92;background:var(--navy);text-decoration:none}.bt .ports s.u{background:var(--cy2);border-color:var(--cy2)}.bt .ports.is-over s.u{background:var(--vi);border-color:var(--vi)}.bt .bt-panel{display:grid;gap:10px;align-content:start}.bt .hh{display:flex;gap:10px;align-items:flex-start;font:500 14px/20px Inter,sans-serif;color:#e6edf6}.bt .dot{flex:none;width:10px;height:10px;border-radius:5px;background:var(--cy);margin-top:5px;box-shadow:0 0 0 4px #00d4ff29}.bt .vchip{display:inline-flex;align-items:center;gap:6px;height:26px;padding:0 10px 0 8px;border-radius:13px;border:1px solid var(--vi);background:#b197fc26;color:var(--vit);font:700 13px/24px Inter,sans-serif;white-space:nowrap;justify-self:start;max-width:100%}.bt .vchip.sm{height:24px;font-size:12px;gap:5px;padding:0 9px 0 7px}.bt .why{font:400 14px/20px Inter,sans-serif;color:#e6edf6}.bt .fixes{display:flex;flex-direction:column;gap:8px;margin-top:2px}.bt .btn{min-height:44px;padding:0 18px;border:1px solid var(--bd);border-radius:10px;font:600 14px Inter,sans-serif;display:inline-flex;align-items:center;justify-content:center;gap:8px;color:#e6edf6;background:transparent;cursor:pointer;text-decoration:none;text-align:center}.bt .btn.btn-2{border-color:#5c7ca6}.bt .btn.btn-cy{background:var(--cy);border-color:var(--cy);color:var(--navy);font-weight:700}.bt .btn.vio{border-color:#6d63a6;background:#b197fc14}.bt .btn.vio.fill{background:var(--vi);border-color:var(--vi);color:#1b1240}.bt .btn:hover{border-color:#fff}.bt .btn.btn-cy:hover,.bt .btn.vio.fill:hover{filter:brightness(1.08)}.bt .bt-panel[data-kind=win]{border-color:#3ddc978c;background:linear-gradient(180deg,rgba(61,220,151,.08),var(--card) 60%)}.bt .winrow{display:flex;gap:14px;align-items:center}.bt .ring{flex:none;width:52px;height:52px;border-radius:26px;border:2px solid var(--gr);display:grid;place-items:center;box-shadow:0 0 0 6px #3ddc971f,0 0 0 12px #3ddc970f;background:#3ddc971a;margin:6px}.bt .winrow h2{font:700 21px/26px Inter,sans-serif}.bt .winrow p{font:400 14px/20px Inter,sans-serif;color:var(--dim);margin-top:2px}.bt .winbtns{display:grid;grid-template-columns:1fr 1fr;gap:8px}.bt .quiet{display:inline-flex;align-items:center;gap:6px;min-height:44px;font:500 14px/20px Inter,sans-serif;color:var(--dim);text-decoration:underline;text-decoration-color:#3a5f8c;text-underline-offset:4px}.bt .vseg{display:flex;border:1px solid var(--bd);border-radius:10px;overflow:hidden;background:var(--navy);flex:none;width:200px;max-width:100%}.bt .vseg button{all:unset;box-sizing:border-box;flex:1;display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;font:600 14px Inter,sans-serif;color:#8fa6c4;cursor:pointer}.bt .vseg button[aria-selected=true]{background:var(--cy);color:var(--navy);font-weight:700}.bt .vseg button:focus-visible{outline:2px solid #fff;outline-offset:-4px}@media(max-width:599px){.bt .vseg{width:100%}.bt .bt-bar .eyebrow{display:none}}.bt .bt-stage{position:relative;background:var(--cv);border:1px solid var(--bd);border-radius:14px;overflow:hidden;min-height:340px;min-width:0}.bt .bt-stage:before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(rgba(0,212,255,.04) 1px,transparent 1px) 0 0/32px 32px,linear-gradient(90deg,rgba(0,212,255,.04) 1px,transparent 1px) 0 0/32px 32px}.bt .cv{position:absolute;inset:0;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .16s var(--inout),visibility 0s linear .16s}.bt .cv.is-on{opacity:1;visibility:visible;pointer-events:auto;transition:opacity .16s var(--inout),visibility 0s}.bt .bt-stage.nt .cv{transition:none}.bt .tc,.bt .lotbox{position:absolute}.bt .tc{left:0;right:0}.bt .lines,.bt .plan{position:absolute;left:0;top:0;overflow:visible;pointer-events:none}.bt .bt-ns{position:absolute;inset:0;display:grid;place-items:center;padding:16px;color:var(--dim)}.bt .lot-line{fill:none;stroke:#5c7ca6;stroke-width:1.5;stroke-dasharray:16 5 2 5}.bt .bld{fill:#0f2340;stroke:#3a5f8c;stroke-width:1.5}.bt .bldl{font:500 12px var(--font-mono, monospace);fill:#8da0bb;letter-spacing:.06em}.bt .drv{fill:none;stroke:#2c4a72;stroke-width:1.5;stroke-dasharray:6 6}.bt .cone{fill:#00c2ff1f;stroke:#00c2ff66;stroke-width:1;stroke-dasharray:4 4}.bt .ln{fill:none;stroke:var(--blue);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.bt .ln.up{stroke:var(--cy2);stroke-width:4}.bt .ln.run,.bt .ln.lit{stroke:var(--cy2);stroke-width:3}.bt .ln.flag{stroke:var(--vi);stroke-dasharray:6 6}.bt .ln.ghost{stroke:#4b6482;stroke-dasharray:5 6}.bt .pulse{fill:none;stroke:#bff1ff;stroke-width:4;stroke-linecap:round;filter:drop-shadow(0 0 5px #00C2FF);stroke-dasharray:6 94;display:none}.bt .pulse.thin{stroke-width:3}.bt .nd,.bt .tok,.bt .plus,.bt .mi{font:inherit;text-align:left;cursor:pointer}.bt .nd{position:absolute;background:var(--card);border:1.5px solid var(--bd);border-radius:12px;display:flex;align-items:center;gap:10px;padding:0 10px;z-index:3;color:#fff;min-width:44px}.bt .nd .na{flex:none;width:36px;height:34px;display:grid;place-items:center}.bt svg.g{display:block;width:30px;height:30px}.bt .nd .nt{min-width:0;display:block}.bt .nd b{display:block;font:700 14px/18px Inter,sans-serif;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bt .nd i{display:block;font:500 12px/16px Inter,sans-serif;color:var(--dim);font-style:normal;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bt .nd.lit{border-color:var(--cy2)}.bt .nd.flag{border-color:var(--vi);box-shadow:0 0 0 5px #b197fc2e}.bt .nd.col{flex-direction:column;justify-content:center;gap:2px;padding:0 3px;text-align:center}.bt .nd.col .na{width:44px;height:30px}.bt .nd.col svg.g{width:28px;height:28px}.bt .nd.col b{font-size:12px;line-height:16px;max-width:100%}.bt .nd.col i{font-size:11px;line-height:14px;max-width:100%}.bt .nd.col .nt{text-align:center;max-width:100%}.bt .nd .ports{margin-top:4px;gap:3px}.bt .nd.col .ports{justify-content:center}.bt .nd .ports s{width:10px;height:8px}.bt .bdg{position:absolute;right:-5px;top:-5px;width:18px;height:18px;border-radius:9px;background:var(--gr);display:grid;place-items:center;border:2px solid var(--navy)}.bt .bdg.v{background:var(--vi)}.bt .sel{outline:2px solid #E6F1FF;outline-offset:4px}.bt .nd:focus-visible,.bt .tok:focus-visible,.bt .plus:focus-visible{outline:2px solid var(--cy);outline-offset:5px}.bt .nd.sel:focus-visible,.bt .tok.sel:focus-visible{outline-color:#fff;box-shadow:0 0 0 7px #00d4ff8c}.bt .tok{position:absolute;width:44px;height:44px;padding:0;border:0;background:none;z-index:4;color:#fff}.bt .tok .c{position:relative;width:44px;height:44px;border-radius:22px;background:var(--card);border:1.5px solid var(--blue);display:grid;place-items:center}.bt .tok svg.g{width:26px;height:26px}.bt .tok.lit .c{border-color:var(--cy);box-shadow:0 0 0 4px #00d4ff29}.bt .tok.flag .c{border-color:var(--vi);box-shadow:0 0 0 5px #b197fc33}.bt .tok.sel{outline:0}.bt .tok.sel .c{outline:2px solid #E6F1FF;outline-offset:4px}.bt .tok .lb{position:absolute;white-space:nowrap;font:600 12px Inter,sans-serif;color:#e6f1ff;background:#0a192fe0;border-radius:6px;padding:1px 6px;pointer-events:none}.bt .lb-b{top:100%;left:50%;transform:translate(-50%);margin-top:6px}.bt .lb-t{bottom:100%;left:50%;transform:translate(-50%);margin-bottom:6px}@media(max-width:599px){.bt .lb-t{margin-bottom:1px}}.bt .lb-l{right:100%;top:50%;transform:translateY(-50%);margin-right:8px}.bt .lb-r{left:100%;top:50%;transform:translateY(-50%);margin-left:8px}.bt .plus{position:absolute;width:44px;height:44px;padding:0;border-radius:50%;border:2px dashed var(--cy);color:var(--cy);display:grid;place-items:center;background:#00d4ff12;z-index:3}.bt .plus.pulse2{box-shadow:0 0 0 7px #00d4ff24,0 0 0 14px #00d4ff12}.bt .plus[aria-expanded=true]{background:#00d4ff33}.bt .here{position:absolute;transform:translate(-50%);height:22px;padding:0 8px;border-radius:11px;background:var(--cy);color:var(--navy);font:700 11px/22px Inter,sans-serif;white-space:nowrap;z-index:5;pointer-events:none}.bt .chipf{position:absolute;z-index:5;pointer-events:none}.bt .mn{position:absolute;z-index:8;background:#0c1d38;border:1px solid var(--cy);border-radius:14px;padding:6px;box-shadow:0 14px 34px #00000080}.bt .mn:before{content:"";position:absolute;left:var(--ax, 50%);top:-8px;width:14px;height:14px;background:#0c1d38;border-left:1px solid var(--cy);border-top:1px solid var(--cy);transform:translate(-50%) rotate(45deg)}.bt .mn.up:before{top:auto;bottom:-8px;transform:translate(-50%) rotate(225deg)}.bt .mi{all:unset;box-sizing:border-box;width:100%;min-height:56px;border-radius:10px;display:flex;align-items:center;gap:12px;padding:0 10px;cursor:pointer;position:relative}.bt .mi+.mi{border-top:1px solid var(--ln);border-top-left-radius:0;border-top-right-radius:0}.bt .mi:hover,.bt .mi:focus-visible{background:#00d4ff1f}.bt .mi:focus-visible{outline:2px solid var(--cy);outline-offset:-2px}.bt .mi[aria-disabled=true]{opacity:.5;cursor:not-allowed}.bt .mi .ma{flex:none;width:40px;height:36px;display:grid;place-items:center}.bt .mi svg.g{width:30px;height:30px}.bt .mi b{display:block;font:700 15px/18px Inter,sans-serif;color:#fff}.bt .mi i{display:block;font:500 12px/16px Inter,sans-serif;color:var(--dim);font-style:normal}.bt .toast{position:absolute;z-index:9;left:50%;bottom:12px;transform:translate(-50%);max-width:calc(100% - 24px);height:40px;padding:0 16px;border-radius:20px;background:#0c2a2a;border:1px solid rgba(61,220,151,.6);display:flex;align-items:center;font:600 14px Inter,sans-serif;color:#e6fff4;box-shadow:0 8px 24px #00000059;white-space:nowrap;pointer-events:none;opacity:0}.bt .toast.in{opacity:1}.bt .toast.out{opacity:0}.bt .bt-list ul{margin:8px 0 0;padding-left:20px;display:grid;gap:4px;color:#e6edf6}.bt .bt-list>ul{padding-left:0;list-style:none}.bt .bt-list li{line-height:1.5}.bt .bt-list,.bt .bt-how{display:grid;gap:8px;max-width:76ch}.bt .bt-how p{color:#a9b8cc;line-height:1.55}.bt .bt-how p.fine{color:#7f92ab}@media(prefers-reduced-motion:no-preference){.bt .pulse{display:block;animation:bt-pulse 2.4s linear infinite}.bt[data-paused] .pulse,.bt .cv:not(.is-on) .pulse{animation-play-state:paused}.bt .nd.new,.bt .tok.new,.bt .plus.new{animation:bt-node .28s var(--out) both}.bt .ln.draw{stroke-dasharray:100;animation:bt-draw .36s var(--out) 80ms both}.bt .ln.fade{animation:bt-fade .2s var(--out) .12s both}.bt .ln.sweep{animation:bt-sweep .36s var(--inout) calc(.6s + var(--i, 0) * .12s) both}.bt .chipf{animation:bt-fade .2s var(--out) .12s both}.bt .tk.pop{animation:bt-pop .22s var(--pop) both}.bt .ring{animation:bt-ring .6s var(--out) both}.bt .mn{animation:bt-menu .18s var(--out) both}.bt .toast.in{animation:bt-toast-in .22s var(--out) both}.bt .toast.out{animation:bt-toast-out .16s var(--in) both}@keyframes bt-pulse{0%{stroke-dashoffset:0}to{stroke-dashoffset:-100}}@keyframes bt-node{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:none}}@keyframes bt-draw{0%{stroke-dashoffset:100}to{stroke-dashoffset:0}}@keyframes bt-fade{0%{opacity:0}to{opacity:1}}@keyframes bt-sweep{0%,to{opacity:1}40%{opacity:.4}}@keyframes bt-pop{0%{transform:scale(.6)}to{transform:scale(1)}}@keyframes bt-ring{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:none}}@keyframes bt-menu{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}@keyframes bt-toast-in{0%{opacity:0;transform:translate(-50%,6px)}to{opacity:1;transform:translate(-50%)}}@keyframes bt-toast-out{0%{opacity:1}to{opacity:0}}}@media(prefers-reduced-motion:reduce){.bt .cv,.bt .cv.is-on,.bt .toast{transition:none}}.bt .cv:focus-visible{outline:2px solid var(--cy);outline-offset:-3px}
