.app-shell[data-v-7748fc46]{min-height:100vh;background:radial-gradient(circle at 20% 20%,rgba(74,144,226,.08),transparent 30%),radial-gradient(circle at 80% 0%,rgba(255,202,40,.08),transparent 25%),var(--bg)}.layout[data-v-7748fc46]{display:grid;grid-template-columns:240px 1fr}.sidebar[data-v-7748fc46]{position:sticky;top:0;height:100vh;padding:18px 14px;background:#0f172a;color:#e2e8f0;display:flex;flex-direction:column;gap:14px;box-shadow:inset -1px 0 #ffffff0f}.brand-mark[data-v-7748fc46]{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:12px;background:#ffffff0a}.brand-text[data-v-7748fc46]{line-height:1.3}.brand-text .muted[data-v-7748fc46]{color:#e2e8f0b3;font-size:12px}.logo-dot[data-v-7748fc46]{width:14px;height:14px;border-radius:50%;background:linear-gradient(135deg,var(--primary),var(--primary-dark));box-shadow:0 0 0 6px #4a90e224}.nav-menu[data-v-7748fc46]{display:flex;flex-direction:column;gap:6px;margin-top:10px}.nav-link[data-v-7748fc46]{padding:10px 12px;border-radius:12px;color:#e2e8f0;text-decoration:none;border:1px solid transparent;transition:all .15s ease}.nav-link[data-v-7748fc46]:hover{background:#ffffff14;border-color:#ffffff1f}.nav-link.active[data-v-7748fc46]{background:linear-gradient(135deg,var(--primary),var(--primary-dark));border-color:transparent;color:#fff;box-shadow:0 12px 24px #357abd40}.logout-link[data-v-7748fc46]{text-align:left;background:#ef444414;border-color:#ef444433;color:#fecdd3}.view-shell[data-v-7748fc46]{max-width:100%;width:100%;margin:0 auto;padding:16px}@media (max-width: 960px){.layout[data-v-7748fc46]{grid-template-columns:1fr}.sidebar[data-v-7748fc46]{position:relative;height:auto;flex-direction:row;align-items:center;flex-wrap:wrap}.nav-menu[data-v-7748fc46]{flex-direction:row;flex-wrap:wrap}.nav-link[data-v-7748fc46]{padding:8px 10px}}.auth-layout[data-v-34f4225a]{max-width:90%;margin:32px auto 48px;padding:12px 12px 40px;display:grid;grid-template-columns:1.05fr 1fr;gap:32px;align-items:center}.hero[data-v-34f4225a]{padding:32px 12px 32px 32px;align-self:center}.eyebrow[data-v-34f4225a]{color:var(--primary);font-weight:700;letter-spacing:.5px;margin-bottom:8px}.hero h2[data-v-34f4225a]{font-size:2.2rem;margin:6px 0 10px;color:#111827}.sub[data-v-34f4225a]{color:var(--text-sub);font-size:1rem}.auth-card[data-v-34f4225a]{background:#fff;padding:28px;border-radius:18px;box-shadow:0 18px 40px #0000000f;display:flex;flex-direction:column;gap:16px;min-width:60%}.form-group[data-v-34f4225a]{display:flex;flex-direction:column;gap:6px}label[data-v-34f4225a]{font-weight:700;color:#1f2933}input[data-v-34f4225a]{padding:12px 14px;border:1px solid #e5e7eb;border-radius:12px;font-size:.98rem;background:#f9fafb}input[data-v-34f4225a]:focus{outline:2px solid rgba(74,144,226,.25);border-color:var(--primary);background:#fff}.primary-btn[data-v-34f4225a]{width:100%;background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:#fff;border:none;padding:13px;border-radius:14px;font-weight:800;cursor:pointer;box-shadow:0 12px 24px #357abd3d}.primary-btn[data-v-34f4225a]:disabled{opacity:.7;cursor:not-allowed}.toast[data-v-34f4225a]{padding:10px 12px;border-radius:10px;background:#ecfdf3;color:#166534;border:1px solid #bbf7d0}.toast.error[data-v-34f4225a]{background:#fef2f2;color:#b91c1c;border-color:#fecdd3}@media (max-width: 980px){.auth-layout[data-v-34f4225a]{grid-template-columns:1fr;max-width:90%}.auth-card[data-v-34f4225a]{min-width:0}}.page[data-v-c5ec652b]{max-width:100%;margin:0 auto;padding:12px 16px 80px}.hero[data-v-c5ec652b]{display:flex;align-items:center;justify-content:space-between;padding:18px 20px;background:var(--card-bg);border-radius:16px;box-shadow:0 10px 26px #0000000d;margin-bottom:16px}.eyebrow[data-v-c5ec652b]{color:var(--primary);font-weight:800;letter-spacing:.5px;margin-bottom:6px}.hero h2[data-v-c5ec652b]{margin:0;color:#0f172a}.sub[data-v-c5ec652b]{color:var(--text-sub);margin-top:4px}.pill[data-v-c5ec652b]{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;background:#eef2ff;color:#4338ca;border-radius:999px;font-weight:700}.pill .dot[data-v-c5ec652b]{width:10px;height:10px;border-radius:50%;background:#22c55e;box-shadow:0 0 0 6px #22c55e26}.card[data-v-c5ec652b]{background:#fff;border-radius:18px;box-shadow:0 12px 30px #0000000f;padding:18px;margin-bottom:16px}.section-head[data-v-c5ec652b]{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.section-head h3[data-v-c5ec652b]{margin:0;color:#0f172a}.hint[data-v-c5ec652b]{color:var(--text-sub);font-size:.9rem;margin:4px 0 0}.actions-row[data-v-c5ec652b]{display:flex;align-items:center;gap:8px}.filter-bar[data-v-c5ec652b]{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:10px;border:1px solid #e5e7eb;border-radius:10px;background:#f8fafc;margin:10px 0}.filter-input[data-v-c5ec652b]{flex:1 1 240px;min-width:30%;padding:10px 12px;border:1px solid #d8dde5;border-radius:10px;background:#fff}.filter-select[data-v-c5ec652b]{padding:10px 12px;border:1px solid #d8dde5;border-radius:10px;background:#fff}.primary-btn.small[data-v-c5ec652b],.ghost-btn.small[data-v-c5ec652b]{padding:8px 12px;border-radius:10px}.pager-row[data-v-c5ec652b]{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.size-field[data-v-c5ec652b]{display:flex;align-items:center;gap:6px}.size-label[data-v-c5ec652b]{font-size:.9rem;color:var(--text-sub);white-space:nowrap}.size-input[data-v-c5ec652b]{width:120px}.pager[data-v-c5ec652b]{display:flex;align-items:center;gap:8px}.pager-info[data-v-c5ec652b]{color:var(--text-sub);font-size:.95rem}.pager button[data-v-c5ec652b]:disabled{opacity:.6;cursor:not-allowed}.hint.error[data-v-c5ec652b]{color:#b91c1c}.filters[data-v-c5ec652b]{min-height:8px}.filters select[data-v-c5ec652b],.filters input[data-v-c5ec652b]{padding:10px 12px;border-radius:12px;border:1px solid #e5e7eb;background:#f9fafb;min-width:25%}.ghost-btn[data-v-c5ec652b]{border:1px solid #e5e7eb;background:#f8fafc;border-radius:12px;padding:10px 14px;font-weight:700;cursor:pointer}.grid[data-v-c5ec652b]{display:grid;grid-template-columns:1.3fr .7fr;gap:14px}.micro[data-v-c5ec652b]{font-size:.8rem;color:var(--text-sub)}.table[data-v-c5ec652b]{display:flex;flex-direction:column;gap:4px;width:100%;font-size:13px}.thead[data-v-c5ec652b],.trow[data-v-c5ec652b]{display:grid;grid-template-columns:60px 110px 110px 90px 90px 90px 150px 90px 130px repeat(3,auto);align-items:flex-start;gap:0;padding:0;width:100%;justify-items:start}.thead[data-v-c5ec652b]{font-weight:800;background:#f5f7fb;border-bottom:1px solid #e5e7eb}.trow[data-v-c5ec652b]{background:transparent;border-bottom:1px solid #e5e7eb}.thead span[data-v-c5ec652b],.trow span[data-v-c5ec652b]{display:block;padding:4px 6px;border-radius:0;border:none;background:transparent;word-break:break-word;overflow-wrap:break-word;white-space:normal}.placeholder[data-v-c5ec652b]{color:var(--text-sub);padding:12px 8px}.bold[data-v-c5ec652b]{font-weight:800}.muted[data-v-c5ec652b]{color:var(--text-sub)}.actions[data-v-c5ec652b]{display:flex;justify-content:flex-end;gap:6px}.pill-btn[data-v-c5ec652b]{display:inline-flex;align-items:center;justify-content:center;padding:2px 5px;border-radius:5px;border:1px solid #d8dde5;background:#f8fafc;cursor:pointer;font-size:11px;width:40px;line-height:1.1}.pill-btn.ghost[data-v-c5ec652b]{background:transparent}.text-btn[data-v-c5ec652b]{background:transparent;border:none;color:#2563eb;cursor:pointer}.text-btn.danger[data-v-c5ec652b]{color:#b91c1c}.chip[data-v-c5ec652b]{padding:2px 6px;border-radius:8px;font-size:.78rem;color:#fff}.chip.active[data-v-c5ec652b]{background:#22c55e}.chip.disabled[data-v-c5ec652b]{background:#9ca3af}.form[data-v-c5ec652b]{display:grid;gap:10px}.field[data-v-c5ec652b]{display:flex;flex-direction:column;gap:6px;font-size:.95rem}.field input[data-v-c5ec652b],.field select[data-v-c5ec652b]{padding:10px 12px;border-radius:12px;border:1px solid #e5e7eb;background:#fff}.readonly[data-v-c5ec652b]{padding:10px 12px;border-radius:12px;border:1px solid #e5e7eb;background:#f1f5f9}.form-actions[data-v-c5ec652b]{display:flex;gap:8px}.primary-btn[data-v-c5ec652b]{background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:#fff;border:none;padding:12px 18px;border-radius:14px;font-weight:800;cursor:pointer;box-shadow:0 12px 24px #357abd3d}.modal-backdrop[data-v-c5ec652b]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;display:flex;align-items:center;justify-content:center;z-index:200}.modal[data-v-c5ec652b]{background:#fff;border-radius:14px;padding:16px;width:90%;display:flex;flex-direction:column;gap:8px}.kv[data-v-c5ec652b]{display:flex;justify-content:space-between;gap:12px;align-items:center;border-bottom:1px dashed #e5e7eb;padding:6px 0}.kv code[data-v-c5ec652b]{font-family:Consolas,monospace;font-size:.9rem;color:#0f172a;word-break:break-all}@media (max-width: 1100px){.grid[data-v-c5ec652b]{grid-template-columns:1fr}.thead[data-v-c5ec652b],.trow[data-v-c5ec652b]{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:6px}}.placeholder-page[data-v-d4fe4348]{background:#fff;border-radius:14px;padding:16px;box-shadow:var(--shadow)}.muted[data-v-d4fe4348]{color:var(--text-sub)}.placeholder-page[data-v-f9cfa693]{background:#fff;border-radius:14px;padding:16px;box-shadow:var(--shadow)}.muted[data-v-f9cfa693]{color:var(--text-sub)}.placeholder-page[data-v-34d9e670]{background:#fff;border-radius:14px;padding:16px;box-shadow:var(--shadow)}.muted[data-v-34d9e670]{color:var(--text-sub)}.placeholder-page[data-v-dd051bf0]{background:#fff;border-radius:14px;padding:16px;box-shadow:var(--shadow)}.muted[data-v-dd051bf0]{color:var(--text-sub)}.page[data-v-11a999ad]{display:flex;flex-direction:column;gap:14px}.section-head[data-v-11a999ad]{background:var(--card-bg);padding:16px;border-radius:14px;box-shadow:var(--shadow);display:flex;align-items:center;justify-content:space-between;gap:12px}.eyebrow[data-v-11a999ad]{color:var(--primary);font-weight:800;letter-spacing:.5px;margin:0 0 4px}.muted[data-v-11a999ad]{color:var(--text-sub);margin-top:6px}.head-actions[data-v-11a999ad]{display:flex;gap:8px}.grid[data-v-11a999ad]{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:12px}.card[data-v-11a999ad]{background:#fff;border-radius:14px;padding:14px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:10px}.form-grid[data-v-11a999ad]{display:grid;grid-template-columns:repeat(2,minmax(140px,1fr));gap:8px}label[data-v-11a999ad]{display:flex;flex-direction:column;gap:4px;font-size:.95rem;color:#0f172a}input[data-v-11a999ad],select[data-v-11a999ad]{padding:8px 10px;border-radius:10px;border:1px solid #e2e8f0;background:#f8fafc}.actions[data-v-11a999ad]{display:flex;gap:10px}.primary-btn[data-v-11a999ad]{background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:#fff;border:none;padding:10px 12px;border-radius:12px;cursor:pointer}.ghost-btn[data-v-11a999ad]{border:1px solid #e2e8f0;background:#f8fafc;padding:10px 12px;border-radius:12px;cursor:pointer}.toast[data-v-11a999ad]{position:fixed;right:20px;bottom:20px;background:#0f766ee6;color:#fff;padding:10px 14px;border-radius:10px;box-shadow:0 10px 20px #0000001a}@media (max-width: 720px){.form-grid[data-v-11a999ad]{grid-template-columns:1fr}}.page[data-v-577de239]{display:flex;flex-direction:column;gap:14px}.section-head[data-v-577de239]{background:var(--card-bg);padding:16px;border-radius:14px;box-shadow:var(--shadow);display:flex;align-items:center;justify-content:space-between;gap:12px}.eyebrow[data-v-577de239]{color:var(--primary);font-weight:800;letter-spacing:.5px;margin:0 0 4px}.muted[data-v-577de239]{color:var(--text-sub);margin-top:4px}.actions[data-v-577de239]{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.scene-input[data-v-577de239]{padding:8px 10px;border-radius:10px;border:1px solid #e2e8f0;background:#f8fafc}.card[data-v-577de239]{background:#fff;border-radius:14px;padding:14px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:10px}.card-head[data-v-577de239]{display:flex;align-items:center;justify-content:space-between;gap:10px}.tree[data-v-577de239]{list-style:none;padding-left:0;margin:0;display:flex;flex-direction:column;gap:6px}.tree.children[data-v-577de239]{padding-left:18px;border-left:2px dashed #e2e8f0}.node-pill[data-v-577de239]{padding:8px 10px;border-radius:12px;background:#f7f9fb;border:1px solid #e5e7eb;display:flex;align-items:center;gap:8px;position:relative}.node-pill[data-v-577de239]:before{content:"";position:absolute;left:-12px;top:14px;width:12px;height:2px;background:#e2e8f0}.dot[data-v-577de239]{width:10px;height:10px;border-radius:50%;display:inline-block;background:#94a3b8}.dot.on[data-v-577de239]{background:#22c55e;box-shadow:0 0 0 4px #22c55e26}.dot.off[data-v-577de239]{background:#cbd5e1}.badge.level[data-v-577de239]{background:#eef2ff;color:#4338ca;padding:2px 6px;border-radius:8px;font-weight:700}.code[data-v-577de239]{font-family:Consolas,monospace;background:#eef2ff;color:#4338ca;padding:2px 6px;border-radius:8px}.meta[data-v-577de239]{color:#64748b;font-size:.85rem}.chip[data-v-577de239]{padding:2px 8px;border-radius:10px;font-size:.85rem;background:#e2e8f0}.chip-on[data-v-577de239]{background:#dcfce7;color:#166534}.chip-off[data-v-577de239]{background:#f1f5f9;color:#64748b}.graph[data-v-577de239]{display:flex;gap:10px;flex-wrap:wrap}.add-btn-bar[data-v-577de239]{display:flex;align-items:center;gap:10px;margin:4px 0 10px}.node-box[data-v-577de239]{font-size:.92rem;color:#0f172a;display:flex;flex-direction:column;gap:2px;word-break:break-word;white-space:normal}.node-box .title[data-v-577de239]{font-weight:700}.node-box .name[data-v-577de239]{color:#1f2937;font-size:.95rem}.node-box .desc[data-v-577de239]{color:#475569;font-size:.85rem;line-height:1.35}.pill[data-v-577de239]{padding:8px 10px;border-radius:10px;background:#f8fafc;border:1px solid #e5e7eb;display:flex;flex-wrap:wrap;gap:6px;align-items:center}.edge .arrow[data-v-577de239]{color:#0f172a;font-weight:800}.placeholder[data-v-577de239]{color:#94a3b8;padding:12px 0}.toast.error[data-v-577de239]{position:fixed;right:20px;bottom:20px;background:#ef4444e6;color:#fff;padding:10px 14px;border-radius:10px;box-shadow:0 10px 20px #0000001a}.modal-backdrop[data-v-577de239]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;display:flex;align-items:center;justify-content:center;z-index:300}.modal[data-v-577de239]{background:#fff;padding:16px;border-radius:14px;min-width:360px;box-shadow:0 18px 40px #00000029;display:flex;flex-direction:column;gap:10px}.node-menu[data-v-577de239]{position:absolute;z-index:310;background:#fff;border:1px solid #e2e8f0;box-shadow:0 12px 30px #0000001f;border-radius:10px;padding:6px;display:flex;flex-direction:column;gap:4px}.menu-item[data-v-577de239]{border:none;background:#f8fafc;padding:8px 10px;border-radius:8px;text-align:left;cursor:pointer}.menu-item[data-v-577de239]:hover{background:#e2e8f0}.menu-item.danger[data-v-577de239]{color:#b91c1c}@media (max-width: 900px){.grid[data-v-577de239],.graph[data-v-577de239]{grid-template-columns:1fr}}.page[data-v-3c7571f6]{display:flex;flex-direction:column;gap:14px}.section-head[data-v-3c7571f6]{background:var(--card-bg);padding:16px;border-radius:14px;box-shadow:var(--shadow);display:flex;align-items:center;justify-content:space-between;gap:12px}.eyebrow[data-v-3c7571f6]{color:var(--primary);font-weight:800;letter-spacing:.5px;margin:0 0 4px}.muted[data-v-3c7571f6]{color:var(--text-sub);margin-top:4px}.actions[data-v-3c7571f6]{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.actions.right[data-v-3c7571f6]{justify-content:flex-end}.title-row.space-between[data-v-3c7571f6]{display:flex;justify-content:space-between;align-items:center;gap:10px}.icon-btn[data-v-3c7571f6]{border:1px solid #e2e8f0;background:linear-gradient(145deg,#f8fafc,#eef2ff);width:34px;height:34px;border-radius:12px;font-size:18px;cursor:pointer;color:#0f172a;transition:all .15s ease,transform .1s ease}.icon-btn[data-v-3c7571f6]:hover{background:#e2e8f0;transform:translateY(-1px)}.primary-btn[data-v-3c7571f6]{background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:#fff;border:none;padding:10px 14px;border-radius:12px;cursor:pointer;box-shadow:0 8px 20px #3b82f640;transition:transform .1s ease,box-shadow .15s ease}.primary-btn[data-v-3c7571f6]:hover{transform:translateY(-1px);box-shadow:0 10px 24px #3b82f64d}.primary-btn[data-v-3c7571f6]:disabled{opacity:.7;cursor:not-allowed;box-shadow:none}.ghost-btn[data-v-3c7571f6]{border:1px solid #e2e8f0;background:linear-gradient(145deg,#f8fafc,#eef2ff);padding:10px 14px;border-radius:12px;cursor:pointer;color:#0f172a;transition:transform .1s ease,box-shadow .15s ease;box-shadow:0 4px 12px #94a3b826}.ghost-btn[data-v-3c7571f6]:hover{transform:translateY(-1px);box-shadow:0 6px 16px #94a3b833}.inline.toggle[data-v-3c7571f6]{display:flex;align-items:center;gap:6px;cursor:pointer}.inline.toggle input[data-v-3c7571f6]{display:none}.inline.toggle .switch[data-v-3c7571f6]{width:40px;height:22px;background:#e2e8f0;border-radius:999px;position:relative;transition:all .2s ease;box-shadow:inset 0 1px 3px #0f172a14}.inline.toggle .switch[data-v-3c7571f6]:after{content:"";position:absolute;width:18px;height:18px;border-radius:50%;background:#fff;top:2px;left:2px;transition:all .2s ease;box-shadow:0 2px 6px #00000026}.inline.toggle input:checked+.switch[data-v-3c7571f6]{background:linear-gradient(135deg,var(--primary),var(--primary-dark))}.inline.toggle input:checked+.switch[data-v-3c7571f6]:after{transform:translate(18px)}.inline.toggle .label[data-v-3c7571f6]{color:#0f172a;font-weight:600}.card[data-v-3c7571f6]{background:#fff;border-radius:14px;padding:14px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:10px}.tree-visual[data-v-3c7571f6]{overflow:auto}.tree[data-v-3c7571f6]{list-style:none;padding-left:0;margin:0;display:flex;flex-direction:column;gap:6px}.tree.children[data-v-3c7571f6]{padding-left:18px;border-left:2px dashed #e2e8f0}.node-box[data-v-3c7571f6]{font-size:.92rem;color:#0f172a;display:flex;flex-direction:column;gap:2px;word-break:break-word;white-space:normal}.node-box .title[data-v-3c7571f6]{font-weight:700}.node-box .name[data-v-3c7571f6]{color:#1f2937;font-size:.95rem}.node-box .desc[data-v-3c7571f6]{color:#475569;font-size:.85rem;line-height:1.35}.nodes-card .card-head[data-v-3c7571f6]{display:flex;align-items:center;justify-content:space-between}.node-list[data-v-3c7571f6]{display:flex;flex-direction:column;gap:10px}.node-row[data-v-3c7571f6]{border:1px solid #e2e8f0;border-radius:12px;padding:10px 12px;background:#f8fafc;box-shadow:inset 0 1px #fff;display:flex;flex-direction:column;gap:6px}.node-main[data-v-3c7571f6]{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.meta-text[data-v-3c7571f6]{color:#475569;font-size:.9rem}.node-actions[data-v-3c7571f6]{display:flex;justify-content:flex-end}.keyword-list[data-v-3c7571f6]{display:flex;flex-direction:column;gap:10px}.keyword-row[data-v-3c7571f6]{border:1px solid #e2e8f0;border-radius:12px;padding:12px 14px;background:#f8fafc;box-shadow:inset 0 1px #fff;display:flex;flex-direction:column;gap:10px}.keyword-actions[data-v-3c7571f6]{display:flex;justify-content:flex-end}input[data-v-3c7571f6],select[data-v-3c7571f6],textarea[data-v-3c7571f6]{padding:10px 12px;border-radius:12px;border:1px solid #e2e8f0;background:linear-gradient(145deg,#f8fafc,#f1f5f9);box-shadow:inset 0 1px #fff;transition:border-color .15s ease,box-shadow .15s ease;font-size:.95rem;color:#0f172a;width:100%;box-sizing:border-box}textarea[data-v-3c7571f6]{min-height:90px;resize:vertical}input[data-v-3c7571f6]:focus,select[data-v-3c7571f6]:focus,textarea[data-v-3c7571f6]:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f62e}.node-pill[data-v-3c7571f6]{padding:8px 10px;border-radius:12px;background:#f7f9fb;border:1px solid #e5e7eb;display:flex;align-items:center;gap:8px;position:relative}.dot[data-v-3c7571f6]{width:10px;height:10px;border-radius:50%;display:inline-block;background:#94a3b8}.dot.on[data-v-3c7571f6]{background:#22c55e;box-shadow:0 0 0 4px #22c55e26}.dot.off[data-v-3c7571f6]{background:#cbd5e1}.badge.level[data-v-3c7571f6]{background:#eef2ff;color:#4338ca;padding:2px 6px;border-radius:8px;font-weight:700}.code[data-v-3c7571f6]{font-family:Consolas,monospace;background:#eef2ff;color:#4338ca;padding:2px 6px;border-radius:8px}.meta[data-v-3c7571f6]{color:#64748b;font-size:.85rem}.chip[data-v-3c7571f6]{padding:2px 8px;border-radius:10px;font-size:.85rem;background:#e2e8f0}.chip-on[data-v-3c7571f6]{background:#dcfce7;color:#166534}.chip-off[data-v-3c7571f6]{background:#f1f5f9;color:#64748b}.placeholder[data-v-3c7571f6]{color:#94a3b8;padding:12px 0}.toast.error[data-v-3c7571f6]{position:fixed;right:20px;bottom:20px;background:#ef4444e6;color:#fff;padding:10px 14px;border-radius:10px;box-shadow:0 10px 20px #0000001a}.modal-backdrop[data-v-3c7571f6]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;display:flex;align-items:center;justify-content:center;z-index:300}.modal[data-v-3c7571f6]{background:#fff;padding:16px;border-radius:14px;min-width:360px;box-shadow:0 18px 40px #00000029;display:flex;flex-direction:column;gap:10px;max-height:90vh;overflow-y:auto}.modal.large[data-v-3c7571f6]{width:800px;max-width:95vw;max-height:90vh}.node-menu[data-v-3c7571f6]{position:absolute;z-index:310;background:#fff;border:1px solid #e2e8f0;box-shadow:0 12px 30px #0000001f;border-radius:10px;padding:6px;display:flex;flex-direction:column;gap:4px}.menu-item[data-v-3c7571f6]{border:none;background:#f8fafc;padding:8px 10px;border-radius:8px;text-align:left;cursor:pointer}.menu-item[data-v-3c7571f6]:hover{background:#e2e8f0}@media (max-width: 900px){.tree-visual[data-v-3c7571f6]{overflow:auto}}.page[data-v-3e73d0d1]{display:flex;flex-direction:column;gap:14px}.section-head[data-v-3e73d0d1]{background:var(--card-bg);padding:16px;border-radius:14px;box-shadow:var(--shadow);display:flex;align-items:center;justify-content:space-between;gap:12px}.eyebrow[data-v-3e73d0d1]{color:var(--primary);font-weight:800;letter-spacing:.5px;margin:0 0 4px}.muted[data-v-3e73d0d1]{color:var(--text-sub);margin-top:4px}.actions[data-v-3e73d0d1]{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.scene-input[data-v-3e73d0d1]{padding:8px 10px;border-radius:10px;border:1px solid #e2e8f0;background:#f8fafc}.primary-btn[data-v-3e73d0d1]{background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:#fff;border:none;padding:10px 14px;border-radius:12px;cursor:pointer;box-shadow:0 8px 20px #3b82f640;transition:transform .1s ease,box-shadow .15s ease}.primary-btn[data-v-3e73d0d1]:hover{transform:translateY(-1px);box-shadow:0 10px 24px #3b82f64d}.primary-btn[data-v-3e73d0d1]:disabled{opacity:.7;cursor:not-allowed;box-shadow:none}.node-detail-body[data-v-3e73d0d1]{display:flex;flex-direction:column;gap:12px}.edge-modal.scrollable[data-v-3e73d0d1]{max-height:90vh;overflow-y:auto}.node-section[data-v-3e73d0d1]{border:1px solid #e2e8f0;border-radius:12px;padding:10px 12px;background:#f8fafc;box-shadow:inset 0 1px #fff}.section-title[data-v-3e73d0d1]{font-weight:700;color:#0f172a;margin-bottom:8px}.node-meta-box[data-v-3e73d0d1]{display:flex;flex-direction:column;gap:10px;padding:10px;border:1px solid #e2e8f0;border-radius:10px;background:#f8fafc;box-shadow:inset 0 1px #fff}.ghost-btn[data-v-3e73d0d1]{border:1px solid #e2e8f0;background:linear-gradient(145deg,#f8fafc,#eef2ff);padding:10px 14px;border-radius:12px;cursor:pointer;color:#0f172a;transition:transform .1s ease,box-shadow .15s ease;box-shadow:0 4px 12px #94a3b826}.ghost-btn[data-v-3e73d0d1]:hover{transform:translateY(-1px);box-shadow:0 6px 16px #94a3b833}.ghost-btn.sm[data-v-3e73d0d1]{padding:6px 10px;border-radius:8px}.card[data-v-3e73d0d1]{background:#fff;border-radius:14px;padding:14px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:10px;overflow:hidden}.graph-canvas[data-v-3e73d0d1]{border:1px dashed #e2e8f0;border-radius:12px;overflow-x:auto;overflow-y:hidden;background:#f8fafc;position:relative;min-height:70vh;height:auto;width:105vh;max-width:100%;aspect-ratio:3 / 2;white-space:nowrap;box-sizing:border-box}.graph-svg[data-v-3e73d0d1]{min-width:300px;display:inline-block}.edge-label[data-v-3e73d0d1]{font-size:12px;fill:#475569}.node-label[data-v-3e73d0d1]{font-size:12px;fill:#0f172a}.graph-tooltip[data-v-3e73d0d1]{position:absolute;pointer-events:none;background:#0f172a;color:#fff;padding:8px 10px;border-radius:8px;font-size:12px;box-shadow:0 6px 18px #0000002e;white-space:nowrap;z-index:5}.edge-modal-backdrop[data-v-3e73d0d1]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000040;display:flex;align-items:center;justify-content:center;z-index:400}.edge-modal[data-v-3e73d0d1]{background:#fff;padding:20px;border-radius:16px;width:900px;max-width:95vw;box-shadow:0 20px 50px #0f172a38;display:flex;flex-direction:column;gap:12px}.edge-modal.large[data-v-3e73d0d1]{width:900px;max-width:95vw}.edge-modal-head[data-v-3e73d0d1]{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.edge-title .label[data-v-3e73d0d1]{font-weight:800;font-size:17px;color:#0f172a}.edge-title .path[data-v-3e73d0d1]{color:#475569;font-size:13px;margin-top:4px;word-break:break-all}.edge-list[data-v-3e73d0d1]{display:flex;flex-direction:column;gap:8px}.edge-item[data-v-3e73d0d1]{border:1px solid #e2e8f0;border-radius:12px;padding:14px 16px;background:#f8fafc;box-shadow:inset 0 1px #fff}.edge-item.editable[data-v-3e73d0d1]{background:#fdfefe}.edge-line[data-v-3e73d0d1]{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.edge-text[data-v-3e73d0d1]{color:#0f172a}.edge-meta[data-v-3e73d0d1]{display:flex;gap:12px;color:#475569;font-size:12px}.icon-btn[data-v-3e73d0d1]{border:1px solid #e2e8f0;background:linear-gradient(145deg,#f8fafc,#eef2ff);width:34px;height:34px;border-radius:12px;font-size:18px;cursor:pointer;color:#0f172a;transition:all .15s ease,transform .1s ease}.icon-btn[data-v-3e73d0d1]:hover{background:#e2e8f0;transform:translateY(-1px)}.edit-grid[data-v-3e73d0d1]{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;margin:8px 0}.edit-grid label[data-v-3e73d0d1]{display:flex;flex-direction:column;gap:6px;font-size:13px;color:#0f172a}.edit-grid input[data-v-3e73d0d1],.edit-grid select[data-v-3e73d0d1]{padding:10px 12px;border-radius:12px;border:1px solid #e2e8f0;background:linear-gradient(145deg,#f8fafc,#f1f5f9);box-shadow:inset 0 1px #fff;transition:border-color .15s ease,box-shadow .15s ease}.edit-grid input[data-v-3e73d0d1]:focus,.edit-grid select[data-v-3e73d0d1]:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f62e}.edit-grid textarea[data-v-3e73d0d1]{padding:10px 12px;border-radius:12px;border:1px solid #e2e8f0;background:linear-gradient(145deg,#f8fafc,#f1f5f9);box-shadow:inset 0 1px #fff;transition:border-color .15s ease,box-shadow .15s ease;resize:vertical;width:100%}.edit-grid textarea[data-v-3e73d0d1]:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f62e}.script-label[data-v-3e73d0d1]{display:flex;flex-direction:column;gap:6px;font-size:13px;color:#0f172a}.script-area[data-v-3e73d0d1]{padding:12px;border-radius:12px;border:1px solid #e2e8f0;background:linear-gradient(145deg,#f8fafc,#f1f5f9);box-shadow:inset 0 1px #fff;transition:border-color .15s ease,box-shadow .15s ease;min-height:96px}.script-area[data-v-3e73d0d1]:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f62e}.match-grid[data-v-3e73d0d1]{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px}.edge-actions[data-v-3e73d0d1]{display:flex;justify-content:flex-end;align-items:center;flex-wrap:wrap}.edge-actions.compact[data-v-3e73d0d1]{gap:8px}.edge-actions .primary-btn[data-v-3e73d0d1]{background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:#fff;border:none;padding:8px 12px;border-radius:10px;cursor:pointer;box-shadow:0 8px 20px #3b82f640}.edge-actions .primary-btn[data-v-3e73d0d1]:disabled{opacity:.7;cursor:not-allowed;box-shadow:none}.edge-actions .primary-btn.sm[data-v-3e73d0d1]{padding:6px 10px;border-radius:8px}.placeholder[data-v-3e73d0d1]{color:#94a3b8;padding:12px 0}.toast.error[data-v-3e73d0d1]{position:fixed;right:20px;bottom:20px;background:#ef4444e6;color:#fff;padding:10px 14px;border-radius:10px;box-shadow:0 10px 20px #0000001a}.page[data-v-446ccbeb]{display:flex;flex-direction:column;gap:14px}.section-head[data-v-446ccbeb]{background:var(--card-bg);padding:16px;border-radius:14px;box-shadow:var(--shadow);display:flex;align-items:center;justify-content:space-between;gap:12px}.eyebrow[data-v-446ccbeb]{color:var(--primary);font-weight:800;letter-spacing:.5px;margin:0 0 4px}.muted[data-v-446ccbeb]{color:var(--text-sub);margin-top:4px}.actions[data-v-446ccbeb]{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.primary-btn[data-v-446ccbeb]{background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:#fff;border:none;padding:10px 14px;border-radius:12px;cursor:pointer;box-shadow:0 8px 20px #3b82f640}.primary-btn.sm[data-v-446ccbeb]{padding:8px 12px;border-radius:10px}.ghost-btn[data-v-446ccbeb]{border:1px solid #e2e8f0;background:linear-gradient(145deg,#f8fafc,#eef2ff);padding:10px 14px;border-radius:12px;cursor:pointer;color:#0f172a;box-shadow:0 4px 12px #94a3b826}.card[data-v-446ccbeb]{background:#fff;border-radius:14px;padding:14px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:10px}.keyword-list[data-v-446ccbeb]{display:flex;flex-direction:column;gap:10px}.keyword-row[data-v-446ccbeb]{border:1px solid #e2e8f0;border-radius:12px;padding:12px 14px;background:#f8fafc;box-shadow:inset 0 1px #fff;display:flex;flex-direction:column;gap:10px}.form-grid[data-v-446ccbeb]{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px}label[data-v-446ccbeb]{display:flex;flex-direction:column;gap:6px;font-size:.95rem;color:#0f172a}input[data-v-446ccbeb],select[data-v-446ccbeb]{padding:10px 12px;border-radius:12px;border:1px solid #e2e8f0;background:linear-gradient(145deg,#f8fafc,#f1f5f9);box-shadow:inset 0 1px #fff}.actions.right[data-v-446ccbeb]{justify-content:flex-end}.toast[data-v-446ccbeb]{position:fixed;right:20px;bottom:20px;background:#0f766ee6;color:#fff;padding:10px 14px;border-radius:10px;box-shadow:0 10px 20px #0000001a}.page[data-v-f818b3d7]{display:flex;flex-direction:column;gap:14px}.section-head[data-v-f818b3d7]{background:var(--card-bg);padding:16px;border-radius:14px;box-shadow:var(--shadow);display:flex;align-items:center;justify-content:space-between;gap:12px}.eyebrow[data-v-f818b3d7]{color:var(--primary);font-weight:800;letter-spacing:.5px;margin:0 0 4px}.muted[data-v-f818b3d7]{color:var(--text-sub);margin-top:4px}.actions[data-v-f818b3d7]{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.primary-btn[data-v-f818b3d7]{background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:#fff;border:none;padding:10px 14px;border-radius:12px;cursor:pointer;box-shadow:0 8px 20px #3b82f640}.ghost-btn[data-v-f818b3d7]{border:1px solid #e2e8f0;background:linear-gradient(145deg,#f8fafc,#eef2ff);padding:10px 14px;border-radius:12px;cursor:pointer;color:#0f172a}.card[data-v-f818b3d7]{background:#fff;border-radius:14px;padding:14px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:10px}.result-block[data-v-f818b3d7]{border:1px solid #e2e8f0;border-radius:12px;padding:12px;background:#f8fafc;box-shadow:inset 0 1px #fff;margin-bottom:10px}.list[data-v-f818b3d7]{margin:8px 0 0;padding-left:18px;color:#0f172a;display:flex;flex-direction:column;gap:6px}.inline.toggle[data-v-f818b3d7]{display:flex;align-items:center;gap:6px;cursor:pointer}.inline.toggle input[data-v-f818b3d7]{display:none}.inline.toggle .switch[data-v-f818b3d7]{width:40px;height:22px;background:#e2e8f0;border-radius:999px;position:relative;transition:all .2s ease;box-shadow:inset 0 1px 3px #0f172a14}.inline.toggle .switch[data-v-f818b3d7]:after{content:"";position:absolute;width:18px;height:18px;border-radius:50%;background:#fff;top:2px;left:2px;transition:all .2s ease;box-shadow:0 2px 6px #00000026}.inline.toggle input:checked+.switch[data-v-f818b3d7]{background:linear-gradient(135deg,var(--primary),var(--primary-dark))}.inline.toggle input:checked+.switch[data-v-f818b3d7]:after{transform:translate(18px)}.inline.toggle .label[data-v-f818b3d7]{color:#0f172a;font-weight:600}.placeholder[data-v-f818b3d7]{color:#94a3b8}.toast[data-v-f818b3d7]{position:fixed;right:20px;bottom:20px;background:#0f766ee6;color:#fff;padding:10px 14px;border-radius:10px;box-shadow:0 10px 20px #0000001a}.page[data-v-e15bc0a4]{display:flex;flex-direction:column;gap:14px}.section-head[data-v-e15bc0a4]{background:var(--card-bg);padding:16px;border-radius:14px;box-shadow:var(--shadow);display:flex;align-items:center;justify-content:space-between;gap:12px}.eyebrow[data-v-e15bc0a4]{color:var(--primary);font-weight:800;letter-spacing:.5px;margin:0 0 4px}.muted[data-v-e15bc0a4]{color:var(--text-sub);margin-top:4px}.actions[data-v-e15bc0a4]{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.primary-btn[data-v-e15bc0a4]{background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:#fff;border:none;padding:10px 14px;border-radius:12px;cursor:pointer;box-shadow:0 8px 20px #3b82f640}.ghost-btn[data-v-e15bc0a4]{border:1px solid #e2e8f0;background:linear-gradient(145deg,#f8fafc,#eef2ff);padding:10px 14px;border-radius:12px;cursor:pointer;color:#0f172a;box-shadow:0 4px 12px #94a3b826}.card[data-v-e15bc0a4]{background:#fff;border-radius:14px;padding:14px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:10px}.form-grid[data-v-e15bc0a4]{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:8px}label[data-v-e15bc0a4]{display:flex;flex-direction:column;gap:6px;font-size:.95rem;color:#0f172a}input[data-v-e15bc0a4]{padding:10px 12px;border-radius:12px;border:1px solid #e2e8f0;background:#f8fafc}.results[data-v-e15bc0a4]{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:12px}.result-block[data-v-e15bc0a4]{border:1px solid #e2e8f0;border-radius:12px;padding:12px;background:#f8fafc;box-shadow:inset 0 1px #fff;min-height:200px}.pre[data-v-e15bc0a4]{background:#0f172a;color:#e2e8f0;padding:10px;border-radius:10px;font-family:Consolas,monospace;font-size:13px;white-space:pre-wrap;word-break:break-all}.placeholder[data-v-e15bc0a4]{color:#94a3b8}.toast[data-v-e15bc0a4]{position:fixed;right:20px;bottom:20px;background:#0f766ee6;color:#fff;padding:10px 14px;border-radius:10px;box-shadow:0 10px 20px #0000001a}:root{--primary: #4a90e2;--primary-dark: #357abd;--success: #66bb6a;--warning: #ffca28;--danger: #ef5350;--bg: #f5f7fa;--card-bg: #ffffff;--text-main: #333333;--text-sub: #888888;--shadow: 0 4px 12px rgba(0, 0, 0, .05)}*{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;background-color:var(--bg);color:var(--text-main);padding-bottom:0}a{color:inherit;text-decoration:none}button{font:inherit}
