:root{--bg:#0a0912;--panel:#12101cd1;--panel-solid:#14121f;--stroke:#ffffff14;--text:#eceaf5;--muted:#8f8aa6;--accent:#8b5cf6;--ok:#34d399;--warn:#fbbf24;--err:#f87171;--info:#60a5fa;--r:14px}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;overflow:hidden}button{font-family:inherit}.ic{flex:none;display:block}.app{position:fixed;inset:0;overflow:hidden}.stage{position:absolute;inset:0}.scene-canvas{cursor:grab;width:100%;height:100%;display:block;position:absolute;inset:0}.scene-canvas:active{cursor:grabbing}.label-layer{pointer-events:none;position:absolute;inset:0;overflow:hidden}.vignette{pointer-events:none;background:radial-gradient(125% 95% at 48% 38%,#0000 42%,#07050e80 100%),linear-gradient(#07050e73 0%,#07050e00 18%),linear-gradient(#07050e00 78%,#07050e99 100%);position:absolute;inset:0}.tag{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--text);cursor:pointer;white-space:nowrap;will-change:transform;background:#0d0b15d6;border:1px solid #ffffff1a;border-radius:999px;align-items:center;gap:7px;padding:5px 9px 5px 5px;font-size:10px;transition:border-color .18s,box-shadow .18s,opacity .2s;display:flex;position:absolute;top:0;left:0;box-shadow:0 8px 22px #0006}.tag:hover{border-color:#ffffff47}.tag.is-active{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent), 0 10px 26px #8b5cf659}.tag-ic{width:19px;height:19px;color:var(--accent);background:#ffffff14;border-radius:7px;place-items:center;display:grid}.tag-txt{flex-direction:column;gap:1px;line-height:1.2;display:flex}.tag-txt b{letter-spacing:.01em;font-size:10.5px;font-weight:600}.tag-txt i{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;max-width:132px;font-size:8.5px;font-style:normal;overflow:hidden}.tag.is-done{border-color:#34d3998c;animation:.28s cubic-bezier(.2,.9,.3,1.3) pop;box-shadow:0 0 0 1px #34d3994d,0 12px 28px #10b98147}.tag.is-done .tag-ic{color:#34d399;background:#34d39929}.tag.is-done .tag-txt i{color:#6ee7b7}.tag.is-done .tag-dot{box-shadow:0 0 10px #34d399e6;background:#34d399!important}.tag-out{color:#052e22;white-space:nowrap;pointer-events:none;background:#10b981eb;border-radius:999px;padding:2px 7px;font-size:8.5px;font-weight:600;animation:2.2s ease-out forwards outFly;position:absolute;top:-4px;left:50%}@keyframes outFly{0%{opacity:0;transform:translate(-50%,8px)scale(.9)}18%{opacity:1;transform:translate(-50%)scale(1)}70%{opacity:1;transform:translate(-50%,-14px)scale(1)}to{opacity:0;transform:translate(-50%,-30px)scale(.96)}}.tag-dot{border-radius:50%;width:6px;height:6px;box-shadow:0 0 8px}.sidebar{border-right:1px solid var(--stroke);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);z-index:6;background:linear-gradient(#0f0d18f7,#09080ffc);flex-direction:column;width:216px;padding:18px 13px 14px;display:flex;position:absolute;top:0;bottom:0;left:0}.brand{align-items:center;gap:10px;padding:0 4px;display:flex}.brand-mark{color:#fff;background:linear-gradient(135deg,#8b5cf6,#5b21b6);border-radius:11px;place-items:center;width:34px;height:34px;display:grid;box-shadow:0 6px 18px #8b5cf66b}.brand-text{flex-direction:column;gap:2px;min-width:0;display:flex}.brand-text strong{letter-spacing:-.01em;font-size:13.5px}.brand-text span{color:var(--muted);font-size:9.5px}.nav{flex-direction:column;gap:2px;margin-top:24px;display:flex}.nav-item{color:var(--muted);cursor:pointer;text-align:left;background:0 0;border:0;border-radius:9px;align-items:center;gap:10px;width:100%;padding:9px 10px;font-size:12.5px;transition:background .15s,color .15s;display:flex}.nav-item:hover{color:var(--text);background:#ffffff0d}.nav-item.is-active{color:#fff;box-shadow:inset 2px 0 0 var(--accent);background:linear-gradient(90deg,#8b5cf63d,#8b5cf60d)}.nav-item em{color:#cfc9e6;background:#ffffff1a;border-radius:999px;margin-left:auto;padding:1px 6px;font-size:9px;font-style:normal}.side-foot{border-top:1px solid var(--stroke);flex-direction:column;gap:7px;margin-top:auto;padding-top:14px;display:flex}.health{color:var(--muted);align-items:center;gap:7px;font-size:10px;display:flex}.health-dot{border-radius:50%;width:6px;height:6px}.health-dot.is-on{background:var(--ok);box-shadow:0 0 8px #34d399cc}.health-dot.is-off{background:#6b6478}.tagline{color:#6f6987;margin:6px 0 0;font-size:10px;font-style:italic}.rightcol{z-index:4;flex-direction:column;gap:11px;width:306px;max-height:calc(100vh - 32px);display:flex;position:absolute;top:16px;right:16px}.panel{background:var(--panel);border:1px solid var(--stroke);border-radius:var(--r);-webkit-backdrop-filter:blur(16px)saturate(140%);backdrop-filter:blur(16px)saturate(140%);padding:11px 11px 7px;box-shadow:0 14px 34px #0000005c,inset 0 1px #ffffff0d}.panel-head{justify-content:space-between;align-items:center;padding:1px 2px 8px;display:flex}.panel-head h3{text-transform:uppercase;letter-spacing:.11em;color:#b9b3cf;align-items:center;gap:6px;margin:0;font-size:9.5px;font-weight:600;display:flex}.panel-head .count{color:#d6d1e8;letter-spacing:.02em;background:#ffffff17;border-radius:999px;padding:1px 6px;font-size:8.5px}.link{color:var(--accent);cursor:pointer;background:0 0;border:0;padding:0;font-size:9.5px}.link:hover{color:#a78bfa}.agent-list,.task-list,.proj-list{flex-direction:column;gap:1px;margin:0;padding:0;list-style:none;display:flex}.agent-list{max-height:246px;overflow-y:auto}.agent-row{width:100%;color:inherit;cursor:pointer;text-align:left;background:0 0;border:1px solid #0000;border-radius:9px;align-items:center;gap:9px;padding:6px 7px;transition:background .14s,border-color .14s;display:flex}.agent-row:hover{background:#ffffff0b}.agent-row.is-active{background:#8b5cf626;border-color:#8b5cf666}.agent-av{width:26px;height:26px;color:var(--accent);background:#ffffff12;border-radius:8px;flex:none;place-items:center;display:grid}.agent-av.lg{border-radius:10px;width:34px;height:34px}.agent-av.xl{background:#8b5cf629;border-radius:12px;width:42px;height:42px}.agent-meta{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.agent-meta b{color:#f1eefb;font-size:11.5px;font-weight:600}.agent-meta i{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:9px;font-style:normal;overflow:hidden}.status{color:var(--muted);white-space:nowrap;letter-spacing:.02em;align-items:center;gap:4px;font-size:8.5px;display:inline-flex}.status .dot,.dot{background:currentColor;border-radius:50%;flex:none;width:5px;height:5px}.st-working{color:var(--ok)}.st-searching{color:var(--info)}.st-blocked{color:var(--err)}.st-idle{color:#94a3b8}.task-row{width:100%;color:inherit;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:8px;align-items:center;gap:8px;padding:6px 5px;display:flex}.task-row:hover{background:#ffffff0a}.task-ic{width:20px;height:20px;color:var(--muted);background:#ffffff0f;border-radius:6px;flex:none;place-items:center;display:grid}.task-ic.lg{border-radius:10px;width:34px;height:34px}.t-running{color:#a78bfa}.t-waiting{color:var(--warn)}.t-queued{color:#94a3b8}.t-done{color:var(--ok)}.t-failed{color:var(--err)}.task-meta{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.task-meta b{color:#e9e5f6;white-space:nowrap;text-overflow:ellipsis;font-size:11px;font-weight:500;overflow:hidden}.task-meta i{color:var(--muted);text-transform:capitalize;font-size:8.5px;font-style:normal}.task-progress{flex-direction:column;flex:none;align-items:flex-end;gap:4px;width:58px;display:flex}.task-progress em,.proj-progress em{color:var(--muted);font-size:8.5px;font-style:normal}.bar{background:#ffffff1a;border-radius:999px;width:100%;height:3px;display:block;overflow:hidden}.bar>i{background:linear-gradient(90deg,#7c3aed,#a78bfa);border-radius:999px;height:100%;display:block}.b-done>i{background:linear-gradient(90deg,#10b981,#34d399)}.b-failed>i{background:linear-gradient(90deg,#dc2626,#f87171)}.b-waiting>i{background:linear-gradient(90deg,#d97706,#fbbf24)}.proj-row{align-items:center;gap:9px;padding:6px 5px;display:flex}.proj-ic{color:#a5b4fc;background:#ffffff0f;border-radius:7px;flex:none;place-items:center;width:22px;height:22px;display:grid}.proj-ic.lg{border-radius:10px;width:34px;height:34px}.proj-meta{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.proj-meta b{color:#e9e5f6;font-size:11px;font-weight:500}.proj-meta i{color:var(--muted);font-size:8.5px;font-style:normal}.proj-progress{flex:none;align-items:center;gap:7px;width:74px;display:flex}.bottom{z-index:4;align-items:flex-end;gap:11px;display:flex;position:absolute;bottom:16px;left:232px;right:338px}.cmd-panel{flex:none;width:392px;padding:11px 12px 9px}.cmd-head{text-transform:uppercase;letter-spacing:.11em;color:#b9b3cf;align-items:center;gap:7px;margin-bottom:9px;font-size:9.5px;font-weight:600;display:flex}.cmd-head .ic{color:var(--accent)}.demo-chip{letter-spacing:.08em;color:var(--warn);text-transform:uppercase;background:#fbbf241f;border:1px solid #fbbf244d;border-radius:999px;margin-left:auto;padding:2px 6px;font-size:8px;font-weight:500}.cmd-form{border:1px solid var(--stroke);background:#ffffff0d;border-radius:10px;align-items:center;gap:8px;padding:4px 4px 4px 12px;transition:border-color .16s;display:flex}.cmd-form:focus-within{border-color:#8b5cf68c;box-shadow:0 0 0 3px #8b5cf61f}.cmd-form input{min-width:0;color:var(--text);background:0 0;border:0;outline:none;flex:1;padding:7px 0;font-size:11.5px}.cmd-form input::placeholder{color:#6f6987}.send{color:#fff;cursor:pointer;background:linear-gradient(135deg,#8b5cf6,#6d28d9);border:0;border-radius:8px;place-items:center;width:30px;height:30px;transition:transform .12s;display:grid;box-shadow:0 5px 16px #8b5cf673}.send:hover{transform:translateY(-1px)}.cmd-note{color:#6f6987;margin:8px 2px 1px;font-size:8.5px;line-height:1.45}.flow-panel{flex:1;min-width:0;padding:11px 12px 8px}.flow{align-items:flex-start;display:flex}.flow-step{text-align:center;flex-direction:column;flex:1;align-items:center;gap:4px;display:flex;position:relative}.flow-step:not(:last-child):after{content:"";background:#ffffff21;width:calc(100% - 38px);height:1px;position:absolute;top:15px;left:calc(50% + 19px)}.flow-node{border:1px solid var(--stroke);width:30px;height:30px;color:var(--muted);z-index:1;background:#ffffff0d;border-radius:10px;place-items:center;display:grid}.fs-done .flow-node{color:var(--ok);background:#34d39924;border-color:#34d3996b}.fs-active .flow-node{color:#c4b5fd;background:#8b5cf633;border-color:#8b5cf68c;box-shadow:0 0 0 3px #8b5cf61f}.flow-step b{color:#dcd7ee;font-size:9.5px;font-weight:500}.flow-step i{color:var(--muted);font-size:8px;font-style:normal}.statusbar{z-index:6;flex-wrap:wrap;gap:7px;display:flex;position:absolute;top:16px;left:232px}.chip{border:1px solid var(--stroke);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#cfc9e6;letter-spacing:.02em;background:#0d0b15bd;border-radius:999px;align-items:center;gap:5px;padding:5px 9px;font-size:9.5px;display:inline-flex}.chip-demo{color:var(--warn);border-color:#fbbf244d}.pulse{background:currentColor;border-radius:50%;flex:none;width:6px;height:6px;animation:2.2s ease-out infinite ping;box-shadow:0 0}.chip-btn{cursor:pointer;transition:background .15s,border-color .15s,color .15s}.chip-btn:hover{color:#fff;background:#1e1a2ce6}.chip-btn.is-on{color:#c4b5fd;background:#8b5cf629;border-color:#8b5cf673}.only-narrow{display:none}.view-layer{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:5;background:linear-gradient(#0a0912f0,#08070efc);padding:22px 24px 30px;position:absolute;inset:0 0 0 216px;overflow-y:auto}.view{max-width:1160px;margin:0 auto}.view-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.view-head h2{letter-spacing:-.02em;margin:0;font-size:19px}.view-head p{color:var(--muted);margin:4px 0 0;font-size:11.5px}.card-grid{grid-template-columns:repeat(auto-fill,minmax(272px,1fr));gap:11px;display:grid}.agent-card{text-align:left;border:1px solid var(--stroke);cursor:pointer;color:inherit;background:#ffffff09;border-radius:14px;flex-direction:column;gap:7px;padding:13px;transition:border-color .16s,transform .16s,background .16s;display:flex}.agent-card:hover{background:#ffffff0e;border-color:#fff3;transform:translateY(-1px)}.agent-card-top{align-items:center;gap:10px;display:flex}.agent-card-top>div{flex-direction:column;flex:1;min-width:0;display:flex}.agent-card-top b{font-size:12.5px}.agent-card-top i{color:var(--muted);font-size:9.5px;font-style:normal}.agent-card-role{text-transform:uppercase;letter-spacing:.09em;color:var(--accent);margin:0;font-size:9px}.agent-card-act{color:#cfc9e6;min-height:30px;margin:0;font-size:11px;line-height:1.4}.agent-card-stats{border-top:1px solid var(--stroke);gap:16px;margin-top:2px;padding-top:9px;display:flex}.agent-card-stats span{flex-direction:column;gap:1px;display:flex}.agent-card-stats b{font-size:12.5px}.agent-card-stats i{color:var(--muted);font-size:8.5px;font-style:normal}.agent-card-foot{color:var(--muted);align-items:center;gap:5px;font-size:9px;display:flex}.task-board{grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;gap:11px;display:grid}.board-col{border:1px solid var(--stroke);background:#ffffff06;border-radius:12px;flex-direction:column;gap:8px;min-height:120px;padding:10px;display:flex}.board-head{text-transform:uppercase;letter-spacing:.09em;color:#b9b3cf;align-items:center;gap:6px;font-size:9px;display:flex}.board-head em{color:var(--muted);margin-left:auto;font-style:normal}.board-card{border:1px solid var(--stroke);text-align:left;color:inherit;cursor:pointer;background:#ffffff0a;border-radius:10px;flex-direction:column;gap:6px;padding:9px;display:flex}.board-card:hover{border-color:#fff3}.board-card b{font-size:11.5px;font-weight:500}.board-card i{color:var(--muted);font-size:8.5px;font-style:normal}.board-foot{color:var(--muted);text-transform:capitalize;justify-content:space-between;font-size:8.5px;display:flex}.board-empty{text-align:center;color:#625c78;margin:0;padding:12px 0;font-size:9.5px}.d-running{color:#a78bfa}.d-waiting{color:var(--warn)}.d-queued{color:#94a3b8}.d-done{color:var(--ok)}.d-failed{color:var(--err)}.proj-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:11px;display:grid}.proj-card{border:1px solid var(--stroke);background:#ffffff09;border-radius:14px;padding:14px}.proj-card-head{align-items:center;gap:10px;margin-bottom:10px;display:flex}.proj-card-head>div{flex-direction:column;flex:1;min-width:0;display:flex}.proj-card-head b{font-size:12.5px}.proj-card-head i{color:var(--muted);font-size:9.5px;font-style:normal}.proj-card-head em{color:#c4b5fd;font-size:13px;font-style:normal}.proj-card ul{flex-direction:column;gap:6px;margin:11px 0 0;padding:0;list-style:none;display:flex}.proj-card li{color:#cfc9e6;align-items:center;gap:7px;font-size:10.5px;display:flex}.proj-card li em{color:var(--muted);margin-left:auto;font-size:8.5px;font-style:normal}.muted{color:var(--muted)}.small{font-size:10px;line-height:1.5}.soon{text-align:center;place-items:center;gap:10px;max-width:420px;min-height:62vh;margin:0 auto;display:grid}.soon-ic{color:#c4b5fd;background:#8b5cf629;border-radius:14px;place-items:center;width:46px;height:46px;display:grid}.soon h2{margin:4px 0 0;font-size:17px}.soon p{color:var(--muted);margin:0;font-size:11.5px;line-height:1.6}.modal-backdrop{-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);z-index:20;background:#05040ba3;place-items:center;padding:24px;animation:.18s ease-out fade;display:grid;position:fixed;inset:0}.modal{background:var(--panel-solid);border:1px solid #ffffff1a;border-radius:16px;width:min(560px,100%);max-height:84vh;animation:.2s cubic-bezier(.2,.9,.3,1.2) pop;overflow-y:auto;box-shadow:0 34px 90px #0000009e}.modal.narrow{width:min(430px,100%)}.modal-head{border-bottom:1px solid var(--stroke);background:var(--panel-solid);z-index:2;align-items:center;gap:12px;padding:15px 17px;display:flex;position:sticky;top:0}.modal-id{flex:1;min-width:0}.modal-id h3{letter-spacing:-.01em;margin:0;font-size:14.5px}.modal-id p{color:var(--muted);margin:3px 0 0;font-size:10px}.icon-btn{width:28px;height:28px;color:var(--muted);cursor:pointer;background:#ffffff0f;border:0;border-radius:8px;place-items:center;display:grid}.icon-btn:hover{color:#fff;background:#ffffff1f}.modal-body{flex-direction:column;gap:15px;padding:15px 17px;display:flex}.modal-block h4{text-transform:uppercase;letter-spacing:.11em;color:#8f8aa6;margin:0 0 7px;font-size:9px}.modal-activity{color:#e6e2f2;align-items:center;gap:8px;margin:0;font-size:11.5px;display:flex}.modal-activity .pulse{color:var(--accent)}.modal-stats{background:#ffffff0a;border-radius:11px;grid-template-columns:repeat(4,1fr);gap:8px;padding:11px;display:grid}.modal-stats span{flex-direction:column;gap:1px;display:flex}.modal-stats b{font-size:14px}.modal-stats i{color:var(--muted);font-size:8.5px;font-style:normal}.mini-list,.event-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.mini-list li{color:#d8d3ea;align-items:center;gap:7px;font-size:10.5px;display:flex}.mini-list em{color:var(--muted);margin-left:auto;font-size:9px;font-style:normal}.event-list li{color:#d8d3ea;align-items:baseline;gap:8px;font-size:10.5px;display:flex}.event-list time{color:#7c7594;font-variant-numeric:tabular-nums;flex:none;font-size:9px}.event-list em{color:#7c7594;flex:none;margin-left:auto;font-size:8.5px;font-style:normal}.tags{flex-wrap:wrap;gap:6px;display:flex}.tags span{color:#cfc9e6;background:#ffffff0f;border-radius:999px;padding:3px 8px;font-size:9.5px}.modal-foot{border-top:1px solid var(--stroke);background:var(--panel-solid);justify-content:flex-end;gap:8px;padding:13px 17px;display:flex;position:sticky;bottom:0}.btn{border:1px solid var(--stroke);color:var(--text);cursor:pointer;background:#ffffff0d;border-radius:9px;align-items:center;gap:6px;padding:8px 13px;font-size:11px;display:inline-flex}.btn.ghost:hover{background:#ffffff1a}.btn.primary{background:linear-gradient(135deg,#8b5cf6,#6d28d9);border-color:#0000;box-shadow:0 6px 18px #8b5cf666}.kv{border-bottom:1px solid #ffffff0d;justify-content:space-between;gap:14px;padding:7px 0;font-size:11px;display:flex}.kv span{color:var(--muted)}.kv b{text-align:right;font-weight:500}.toast{color:#e9f7f1;z-index:30;background:#12101cf7;border:1px solid #34d39959;border-radius:999px;align-items:center;gap:8px;padding:10px 16px;font-size:11px;animation:.25s ease-out rise;display:flex;position:fixed;bottom:26px;left:50%;transform:translate(-50%);box-shadow:0 18px 44px #0000008c}.toast .ic{color:var(--ok)}.gl-fallback{text-align:center;z-index:8;background:#08070ef0;place-content:center;gap:10px;padding:40px;display:grid;position:absolute;inset:0}.gl-fallback h2{margin:0;font-size:18px}.gl-fallback p,.gl-fallback li{color:var(--muted);font-size:11.5px;line-height:1.6}.gl-fallback ul{text-align:left;gap:5px;margin:6px 0 0;padding:0;list-style:none;display:inline-grid}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#ffffff1f;border-radius:999px}::-webkit-scrollbar-thumb:hover{background:#fff3}@keyframes ping{0%{opacity:.9;box-shadow:0 0}70%{opacity:1;box-shadow:0 0 0 5px #fff0}to{opacity:.9;box-shadow:0 0 #fff0}}@keyframes fade{0%{opacity:0}to{opacity:1}}@keyframes pop{0%{opacity:0;transform:translateY(8px)scale(.985)}to{opacity:1;transform:none}}@keyframes rise{0%{opacity:0;transform:translate(-50%,8px)}to{opacity:1;transform:translate(-50%)}}@media (width<=1360px){.bottom{right:16px}.cmd-panel{width:340px}}@media (width<=1200px){.rightcol{width:280px}.only-narrow{display:inline-flex}}@media (width<=1120px){.rightcol{display:none}.bottom{left:232px;right:16px}.app.no-panels .rightcol{width:280px;max-height:calc(100vh - 200px);display:flex;position:absolute;top:60px;right:16px;overflow-y:auto}}@media (width<=900px){.sidebar{align-items:center;width:64px;padding:16px 10px}.brand-text,.nav-item span,.nav-item em,.side-foot{display:none}.nav-item{justify-content:center;padding:10px}.statusbar,.bottom{left:78px}.view-layer{left:64px}.flow-panel{display:none}}@media (width<=700px){.bottom{flex-direction:column;align-items:stretch}.cmd-panel{width:auto}.task-board{grid-template-columns:repeat(2,minmax(0,1fr))}.modal-stats{grid-template-columns:repeat(2,1fr)}}@media (prefers-reduced-motion:reduce){*{transition-duration:.01ms!important;animation-duration:.01ms!important}}.hint{color:#7c7594;letter-spacing:.01em}@media (width<=1440px){.hint{display:none}}.chip-live,.demo-chip.is-live{color:var(--ok);border-color:#34d39959}.demo-chip.is-live{background:#34d3991f}.proj-form{background:var(--panel);border:1px solid var(--stroke);border-radius:12px;gap:8px;margin-bottom:14px;padding:12px;display:grid}.proj-form-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.proj-input,.proj-textarea{border:1px solid var(--stroke);color:var(--text);font:inherit;background:#ffffff0d;border-radius:8px;padding:8px 10px;font-size:12px}.proj-input{flex:1;min-width:200px}.proj-textarea{resize:vertical;width:100%}.proj-file{border:1px dashed var(--stroke);color:var(--muted);cursor:pointer;border-radius:8px;align-items:center;gap:6px;padding:6px 10px;font-size:11px;display:inline-flex}.proj-file input{display:none}.proj-btn{border:1px solid var(--stroke);color:var(--text);font:inherit;cursor:pointer;background:#ffffff0d;border-radius:8px;padding:7px 12px;font-size:11px}.proj-btn:hover{border-color:var(--accent)}.proj-btn.primary{color:#c4b5fd;background:#8b5cf62e;border-color:#8b5cf673}.proj-btn.danger{color:#fca5a5;background:#f8717126;border-color:#f8717166}.proj-btn:disabled{opacity:.5;cursor:default}.proj-err{color:#fca5a5;margin:0;font-size:11px}.proj-meta{color:var(--muted);margin:0;font-size:11px}.proj-card-actions{gap:6px;margin-top:8px;display:flex}.proj-detail{background:var(--panel);border:1px solid var(--stroke);border-radius:12px;margin-bottom:14px;padding:12px}.proj-detail-head{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.proj-pre{white-space:pre-wrap;word-break:break-word;border:1px solid var(--stroke);background:#00000040;border-radius:8px;max-height:260px;margin:0 0 8px;padding:10px;font-size:12px;overflow:auto}.proj-thumb{border:1px solid var(--stroke);border-radius:8px;max-width:220px;max-height:160px;margin-bottom:8px;display:block}.proj-empty{color:var(--muted);grid-column:1/-1;font-size:12px}.skill-desc{color:var(--muted);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0;font-size:11px;line-height:1.5;display:-webkit-box;overflow:hidden}.skill-detail{border-top:1px solid var(--stroke);gap:4px;margin-top:8px;padding-top:8px;display:grid}.skill-runtime{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:6px 14px;margin:0;padding:0;list-style:none;display:grid}.skill-runtime li{align-items:baseline;gap:8px;font-size:11px;display:flex}.skill-runtime em{color:var(--muted);min-width:64px;font-style:normal}.skill-runtime span{color:var(--text);word-break:break-all}:root[data-theme=cyan]{--accent:#22d3ee}:root[data-theme=amber]{--accent:#f59e0b}:root[data-theme=rose]{--accent:#fb7185}.set-title{letter-spacing:.09em;text-transform:uppercase;color:var(--muted);font-size:10px;font-weight:600}.set-row{flex-wrap:wrap;gap:8px;display:flex}.swatch{border:1px solid var(--stroke);color:var(--text);font:inherit;cursor:pointer;background:#ffffff0a;border-radius:999px;align-items:center;gap:7px;padding:6px 12px;font-size:11px;display:inline-flex}.swatch:hover{border-color:var(--accent)}.swatch.is-active{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.swatch-dot{border:1px solid #00000040;border-radius:50%;width:12px;height:12px;display:inline-block}.know-text{color:var(--text);word-break:break-word;margin:0 0 6px;font-size:12px;line-height:1.55}.proj-status{text-transform:uppercase;letter-spacing:.08em;border:1px solid var(--stroke);color:var(--muted);border-radius:999px;margin:0 0 6px;padding:2px 7px;font-size:9px;display:inline-block}.proj-status.s-done{color:var(--ok);background:#34d3991f;border-color:#34d39966}.proj-status.s-running,.proj-status.s-planning{color:var(--warn);background:#fbbf241f;border-color:#fbbf2466}.proj-status.s-failed{color:var(--err);background:#f871711f;border-color:#f8717166}.gate{z-index:9999;background:radial-gradient(circle at 50% 30%, #7c5cff2e, transparent 60%), var(--bg,#0a0912);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.gate-card{background:var(--panel,#14121f);border:1px solid var(--line,#262238);text-align:center;border-radius:16px;width:min(360px,92vw);padding:28px 24px;box-shadow:0 24px 60px #00000073}.gate-logo{letter-spacing:.42em;color:var(--accent,#7c5cff);margin-bottom:14px;font-size:12px}.gate-card h2{color:var(--text,#f2eefc);margin:0 0 6px;font-size:18px}.gate-card p{color:var(--dim,#9a92b8);margin:0 0 16px;font-size:12px;line-height:1.5}.gate-card input{box-sizing:border-box;width:100%;color:var(--text,#f2eefc);background:var(--bg,#0a0912);border:1px solid var(--line,#262238);border-radius:10px;outline:none;padding:10px 12px;font-size:13px}.gate-card input:focus{border-color:var(--accent,#7c5cff)}.gate-btn{color:#fff;background:var(--accent,#7c5cff);cursor:pointer;border:none;border-radius:10px;width:100%;margin-top:12px;padding:10px 12px;font-size:13px;font-weight:600}.gate-btn:disabled{opacity:.55;cursor:not-allowed}.gate-err{color:#ff6b81;margin-top:10px;font-size:12px}.gate-note{color:var(--dim,#9a92b8);margin-top:12px;font-size:11px}.gate-loading{color:var(--dim,#9a92b8);font-size:13px}
