:host{display:block;width:100%}.kst-toolbar{display:flex;align-items:center;gap:8px;padding:10px 12px;border-bottom:1px solid var(--kst-border,#1b2230);background:var(--kst-bg,#05070a);flex-shrink:0;position:sticky;top:0;z-index:10}.kst-toolbar-btn{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;font-size:12px;font-weight:500;font-family:var(--kst-font, 'Inter', sans-serif);border-radius:var(--kst-radius-sm,5px);border:1px solid var(--kst-border-light,#283247);background:var(--kst-surface,#0c0f17);color:var(--kst-text,#c9d1d9);cursor:pointer;transition:background 160ms ease,border-color 160ms ease,transform 160ms ease,box-shadow 160ms ease;white-space:nowrap;outline:0;flex-shrink:0}.kst-toolbar-btn:hover{background:var(--kst-surface-elevated,#141924);border-color:var(--kst-border-light,#283247)}.kst-toolbar-btn:active{transform:scale(.97)}.kst-toolbar-btn svg{width:14px;height:14px;flex-shrink:0}.kst-toolbar-btn.primary{background:linear-gradient(135deg,var(--kst-accent,#ff2a4b) 0,var(--kst-accent-gradient-end,#8a0f25) 100%);border-color:var(--kst-accent-gradient-end,#8a0f25);color:#fff;font-weight:600}.kst-toolbar-btn.primary:hover{background:linear-gradient(135deg,var(--kst-accent-hover,#ff5a75) 0,var(--kst-accent,#ff2a4b) 100%);border-color:var(--kst-accent-hover,#ff5a75);box-shadow:0 0 18px var(--kst-accent-glow,rgba(255,42,75,.35))}.kst-toolbar-btn.reorder-toggle{color:var(--kst-muted,#6272a4)}.kst-toolbar-btn.reorder-toggle:hover{color:var(--kst-text,#c9d1d9)}.kst-toolbar-btn.reorder-toggle.unlocked{background:linear-gradient(135deg,var(--kst-accent,#ff2a4b) 0,var(--kst-accent-gradient-end,#8a0f25) 100%);border-color:var(--kst-accent-gradient-end,#8a0f25);color:#fff;box-shadow:0 0 16px var(--kst-accent-glow,rgba(255,42,75,.35));animation:swarm-toggle-pulse 2s ease-in-out infinite}.kst-toolbar-btn.reorder-toggle.unlocked:hover{box-shadow:0 0 24px var(--kst-accent-glow,rgba(255,42,75,.35))}.kst-reorder-icon{width:14px;height:14px;flex-shrink:0;transition:transform 160ms ease}.kst-toolbar-btn.reorder-toggle.unlocked .kst-reorder-icon{animation:swarm-toggle-icon-spin .4s ease}@keyframes swarm-toggle-pulse{0%,100%{box-shadow:0 0 12px var(--kst-accent-glow,rgba(255,42,75,.35))}50%{box-shadow:0 0 24px var(--kst-accent-glow,rgba(255,42,75,.35))}}@keyframes swarm-toggle-icon-spin{from{transform:rotate(0) scale(.9)}to{transform:rotate(360deg) scale(1)}}.kst-search{display:flex;align-items:center;gap:4px;margin-left:auto;margin-right:8px;padding:3px 6px;background:var(--kst-bg,#05070a);border:1px solid var(--kst-border-light,#283247);border-radius:var(--kst-radius-sm,5px);transition:border-color var(--kst-transition, 160ms ease),box-shadow var(--kst-transition, 160ms ease);flex:1 1 0%;min-width:0;justify-content:flex-end}.kst-search:focus-within{border-color:var(--kst-accent,#ff2a4b);box-shadow:0 0 0 2px var(--kst-accent-soft,rgba(255,42,75,.12))}.kst-search-icon{width:13px;height:13px;flex-shrink:0;color:var(--kst-muted,#6272a4);pointer-events:none}.kst-search-input{flex:1 1 auto;min-width:0;background:0 0;border:none;outline:0;color:var(--kst-text-bright,#e6edf3);font-size:12px;font-family:var(--kst-font, 'Inter', sans-serif);padding:3px 4px}.kst-search-input::placeholder{color:var(--kst-placeholder,#4a5568)}.kst-search-counter{font-size:10.5px;font-family:'Courier New',monospace;color:var(--kst-muted,#6272a4);padding:0 4px;white-space:nowrap;flex-shrink:0;letter-spacing:.02em}.kst-search-nav{display:flex;align-items:center;justify-content:center;background:0 0;border:none;color:var(--kst-muted,#6272a4);cursor:pointer;padding:2px;border-radius:var(--kst-radius-xs,3px);outline:0;transition:color var(--kst-transition, 160ms ease),background var(--kst-transition, 160ms ease);flex-shrink:0}.kst-search-nav:hover{color:var(--kst-text-bright,#e6edf3);background:var(--kst-border,#1b2230)}.kst-search-nav:active{transform:scale(.92)}.kst-search-nav svg{width:12px;height:12px;display:block}.kraiken-tree-root .node.search-hidden{display:none!important}.kraiken-tree-root .children>.node.search-path::before{filter:grayscale(100%);background:radial-gradient(circle,#6b7280 60%,transparent 100%);box-shadow:0 0 4px rgba(107,114,128,.35);animation:none}.kraiken-tree-root .node-row.search-path .label{color:var(--kst-muted,#6272a4)}.kraiken-tree-root .node-row.active-search-target{background:rgba(255,42,75,.16)!important;outline:2px solid var(--kst-accent,#ff2a4b);outline-offset:-2px;box-shadow:0 0 0 1px var(--kst-accent,#ff2a4b),0 0 14px var(--kst-accent-glow,rgba(255,42,75,.35));border-radius:var(--kst-radius-sm,5px);z-index:5}.kraiken-tree-root .node-row.active-search-target .label{color:var(--kst-text-bright,#e6edf3);font-weight:600}.kst-ph-modal-overlay{position:absolute;inset:0;background:rgba(0,0,0,.65);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);z-index:300;display:flex;align-items:center;justify-content:center;padding:16px}.kst-ph-modal-card{background:var(--kst-surface-elevated,#141924);border:1px solid var(--kst-border-light,#283247);border-radius:var(--kst-radius,8px);width:100%;max-width:320px;max-height:85vh;display:flex;flex-direction:column;box-shadow:0 8px 32px rgba(0,0,0,.6),0 0 0 1px rgba(255,42,75,.08);overflow:hidden}.kst-ph-modal-header{padding:14px 16px;border-bottom:1px solid var(--kst-border,#1b2230);font-size:13px;font-weight:600;color:var(--kst-text-bright,#e6edf3);display:flex;align-items:center;gap:8px}.kst-ph-modal-icon{width:16px;height:16px;flex-shrink:0;color:var(--kst-accent,#ff2a4b)}.kst-ph-modal-subtitle{padding:8px 16px 4px;font-size:11px;color:var(--kst-muted,#6272a4);line-height:1.4}.kst-ph-modal-body{padding:10px 16px;overflow-y:auto;flex:1;display:flex;flex-direction:column;gap:10px}.kst-ph-field-row{display:flex;flex-direction:column;gap:4px}.kst-ph-field-row label{font-size:11px;color:var(--kst-muted,#6272a4);font-weight:600;letter-spacing:.01em;display:flex;align-items:center;gap:4px}.kst-ph-brace{color:var(--kst-accent,#ff2a4b);font-family:'Courier New',monospace;font-weight:700}.kst-ph-field-row input{background:var(--kst-bg,#05070a);border:1px solid var(--kst-border,#1b2230);color:var(--kst-text-bright,#e6edf3);padding:8px 10px;border-radius:var(--kst-radius-xs,3px);font-size:12px;font-family:var(--kst-font, 'Inter', sans-serif);outline:0;user-select:text;transition:border-color 160ms ease,box-shadow 160ms ease}.kst-ph-field-row input:focus{border-color:var(--kst-accent,#ff2a4b);box-shadow:0 0 0 2px var(--kst-accent-soft,rgba(255,42,75,.12))}.kst-ph-field-row input::placeholder{color:var(--kst-placeholder,#4a5568)}.kst-ph-modal-footer{padding:10px 16px;border-top:1px solid var(--kst-border,#1b2230);display:flex;justify-content:flex-end;gap:8px}.kraiken-tree-root{--kst-bg:#05070a;--kst-surface:#0c0f17;--kst-surface-elevated:#141924;--kst-border:#1b2230;--kst-border-light:#283247;--kst-text:#c9d1d9;--kst-text-bright:#e6edf3;--kst-muted:#6272a4;--kst-accent:#ff2a4b;--kst-accent-hover:#ff5a75;--kst-accent-gradient-end:#8a0f25;--kst-accent-glow:rgba(255, 42, 75, 0.35);--kst-accent-soft:rgba(255, 42, 75, 0.12);--kst-accent-bg:rgba(255, 42, 75, 0.06);--kst-warning:#f0c040;--kst-success:#50fa7b;--kst-placeholder:#4a5568;--kst-radius:8px;--kst-radius-sm:5px;--kst-radius-xs:3px;--kst-font:'Inter','Space Grotesk',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;--kst-transition:160ms ease;font-family:var(--kst-font);color:var(--kst-text)}.kraiken-tree-root *{box-sizing:border-box}.kraiken-tree-root .tree-card{margin:0 12px 8px;padding-left:10px;background:var(--kst-surface);border:1px solid var(--kst-border);border-radius:var(--kst-radius);overflow:hidden;box-shadow:0 1px 3px rgba(0,0,0,.3)}.kraiken-tree-root .node{position:relative}.kraiken-tree-root .tree-card>.node>.node-row{margin-left:-10px}.kraiken-tree-root .node-row{display:flex;align-items:center;gap:6px;padding:7px 12px 7px 8px;cursor:pointer;transition:background var(--kst-transition);position:relative;border-left:2px solid transparent;min-height:34px}.kraiken-tree-root .node-row:hover{background:var(--kst-surface-elevated)}.kraiken-tree-root .node-row.selected{background:var(--kst-accent-bg);border-left:2px solid var(--kst-accent);box-shadow:inset 0 0 18px var(--kst-accent-soft)}.kraiken-tree-root .node-row.selected::after{content:'';position:absolute;inset:0;border-radius:0 var(--kst-radius-sm) var(--kst-radius-sm) 0;pointer-events:none;border:1px solid var(--kst-accent);border-left:none;box-shadow:0 0 8px var(--kst-accent-glow);opacity:.7}.kraiken-tree-root .node-row .toggle{width:18px;height:18px;display:flex;align-items:center;justify-content:center;color:var(--kst-muted);flex-shrink:0;transition:transform 180ms ease;border-radius:3px}.kraiken-tree-root .node-row .toggle:hover{color:var(--kst-text);background:var(--kst-border)}.kraiken-tree-root .node-row .toggle.empty{visibility:hidden;pointer-events:none}.kraiken-tree-root .node-row .label{flex:1;font-size:12.5px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--kst-text);letter-spacing:-.01em}.kraiken-tree-root .node-row.selected .label{color:var(--kst-text-bright)}.kraiken-tree-root .node-row .label.editing{overflow:visible;text-overflow:clip;white-space:normal}.kraiken-tree-root .label-inline-input{width:100%;min-width:120px;background:var(--kst-bg);border:1px solid var(--kst-accent);color:var(--kst-text-bright);padding:2px 6px;border-radius:var(--kst-radius-xs);font-size:12.5px;font-family:var(--kst-font);font-weight:500;outline:0;box-shadow:0 0 0 2px var(--kst-accent-soft);user-select:text}.kraiken-tree-root .node-row .actions{display:flex;gap:4px;opacity:0;transition:opacity var(--kst-transition);flex-shrink:0;align-items:center}.kraiken-tree-root .node-row.selected .actions,.kraiken-tree-root .node-row:hover .actions{opacity:1}.kraiken-tree-root .node-row .actions button{background:0 0;border:none;color:rgba(244,63,94,.6);cursor:pointer;padding:4px 5px;border-radius:var(--kst-radius-xs);display:flex;align-items:center;justify-content:center;transition:color var(--kst-transition),background var(--kst-transition),box-shadow var(--kst-transition);outline:0}.kraiken-tree-root .node-row .actions button:hover{color:#e11d48;background:rgba(244,63,94,.08);box-shadow:0 0 8px rgba(225,29,72,.35)}.kraiken-tree-root .node-row .actions button.del-btn{margin-left:auto;border-left:1px solid var(--kst-border);padding-left:6px}.kraiken-tree-root .node-row .actions button.del-btn:hover{color:#e11d48;background:rgba(244,63,94,.1);box-shadow:0 0 8px rgba(225,29,72,.4)}.kraiken-tree-root .children{position:relative;margin-left:14px}.kraiken-tree-root .children .node-row::before{content:'';position:absolute;left:-14px;top:-8px;width:14px;height:25px;border-left:1.5px solid var(--kst-accent-soft);border-bottom:1.5px solid var(--kst-accent-soft);border-bottom-left-radius:6px;pointer-events:none}.kraiken-tree-root .children>.node::before{content:'';position:absolute;left:-16px;top:13px;width:5px;height:5px;border-radius:50%;background:radial-gradient(circle,var(--kst-accent) 60%,transparent 100%);box-shadow:0 0 6px var(--kst-accent-glow),0 0 3px var(--kst-accent);pointer-events:none;z-index:2}.kraiken-tree-root .collapsed>.children{display:none}.kraiken-tree-root .collapsed>.node-row .toggle{transform:rotate(-90deg)}.kraiken-tree-root .node-editor{margin:2px 0 4px 20px;padding:12px;background:var(--kst-surface);border:1px solid var(--kst-border-light);border-radius:var(--kst-radius-sm);display:flex;flex-direction:column;gap:8px;box-shadow:0 2px 8px rgba(0,0,0,.25)}.kraiken-tree-root .node-editor .field-label{font-size:9.5px;color:#f43f5e;text-transform:uppercase;letter-spacing:.06em;font-weight:600}.kraiken-tree-root .node-editor textarea.prompt-input{background:var(--kst-bg);border:1px solid var(--kst-border);color:var(--kst-text);padding:8px 10px;border-radius:var(--kst-radius-xs);font-size:12px;font-family:var(--kst-font);line-height:1.55;resize:vertical;min-height:64px;outline:0;width:100%;overflow-y:auto;overflow:hidden}.kraiken-tree-root .node-editor textarea.prompt-input:focus{border-color:var(--kst-accent);box-shadow:0 0 0 2px var(--kst-accent-soft)}.kraiken-tree-root .node-editor textarea.prompt-input::placeholder{color:var(--kst-placeholder)}.kraiken-tree-root .empty-state{text-align:center;padding:52px 24px;color:var(--kst-muted)}.kraiken-tree-root .empty-state p{font-size:13px;margin-bottom:16px;line-height:1.5}.kraiken-tree-root .empty-state p strong{color:var(--kst-text)}.kraiken-tree-root .kst-btn{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;font-size:12px;font-weight:500;font-family:var(--kst-font);border-radius:var(--kst-radius-sm);border:1px solid var(--kst-border-light);background:var(--kst-surface);color:var(--kst-text);cursor:pointer;transition:background var(--kst-transition),border-color var(--kst-transition),transform var(--kst-transition);white-space:nowrap;outline:0}.kraiken-tree-root .kst-btn:hover{background:var(--kst-surface-elevated)}.kraiken-tree-root .kst-btn:active{transform:scale(.97)}.kraiken-tree-root .kst-btn.primary{background:linear-gradient(135deg,var(--kst-accent) 0,var(--kst-accent-gradient-end) 100%);border-color:var(--kst-accent-gradient-end);color:#fff;font-weight:600}.kraiken-tree-root .kst-btn.primary:hover{background:linear-gradient(135deg,var(--kst-accent-hover) 0,var(--kst-accent) 100%);box-shadow:0 0 18px var(--kst-accent-glow)}.kraiken-tree-root .kst-btn svg{width:14px;height:14px;flex-shrink:0}.kraiken-tree-root.swarm-editable .node-row{cursor:grab}.kraiken-tree-root.swarm-editable .node-row:active{cursor:grabbing}.kraiken-tree-root.swarm-editable .node-row.dragging{opacity:.35}.kraiken-tree-root.swarm-editable .children>.node::before{opacity:1;animation:swarm-vertex-breathe 1.8s ease-in-out infinite}.kraiken-tree-root.swarm-editable .children .node-row::before{opacity:.7;border-left-color:rgba(255,42,75,.28);border-bottom-color:rgba(255,42,75,.28)}@keyframes swarm-vertex-breathe{0%,100%{opacity:.8;box-shadow:0 0 8px var(--kst-accent-glow),0 0 3px var(--kst-accent)}50%{opacity:1;box-shadow:0 0 20px var(--kst-accent-glow),0 0 10px var(--kst-accent)}}.kraiken-tree-root.swarm-editable .node-row.drop-before{box-shadow:inset 0 2px 0 var(--kst-accent),0 -4px 10px var(--kst-accent-glow)}.kraiken-tree-root.swarm-editable .node-row.drop-after{box-shadow:inset 0 -2px 0 var(--kst-accent),0 4px 10px var(--kst-accent-glow)}.kraiken-tree-root.swarm-editable .node-row.drop-into{background:var(--kst-accent-soft)!important;box-shadow:inset 0 0 0 1px var(--kst-accent),inset 0 0 16px var(--kst-accent-glow)}.kraiken-tree-root.swarm-editable .node-row.drop-invalid{cursor:not-allowed;opacity:.4}.kraiken-tree-root.swarm-editable .tree-card.drop-root{box-shadow:inset 0 0 0 2px var(--kst-accent),0 0 16px var(--kst-accent-glow)}.squid-breach-active{animation:kraken-breach .6s cubic-bezier(.175,.885,.32,1.275) forwards;position:relative;z-index:99}@keyframes kraken-breach{0%{transform:translateY(40px) scaleX(.4) scaleY(1.6) skewY(-6deg);opacity:0;background:var(--accent);box-shadow:0 0 30px var(--accent)}45%{transform:translateY(-14px) scaleX(1.1) scaleY(.9) skewY(2deg);opacity:1;background:var(--accent-hover);box-shadow:0 0 45px var(--accent)}70%{transform:translateY(4px) scaleX(.95) scaleY(1.05) skewY(-1deg);background:var(--accent-bg)}100%{transform:translateY(0) scale(1) skewY(0);background:var(--accent-bg);box-shadow:none}}.squid-breach-active::before{content:'';position:absolute;left:50%;right:50%;bottom:0;height:3px;background:var(--accent);box-shadow:0 0 15px var(--accent);border-radius:50%;animation:kraken-ripple .6s ease-out forwards;pointer-events:none;opacity:0;z-index:-1}@keyframes kraken-ripple{0%{left:45%;right:45%;opacity:1;transform:scaleY(2)}30%{opacity:1}100%{left:-20%;right:-20%;opacity:0;transform:scaleY(.2)}}.squid-drop{position:absolute;background:rgba(224,242,254,.85);border-radius:50%;pointer-events:none;z-index:100;top:50%;box-shadow:0 1px 2px rgba(255,255,255,.6),inset -1px -1px 2px rgba(0,0,0,.15);animation:drop-fly .8s ease-in-out forwards}@keyframes drop-fly{0%{transform:translate(-50%,-50%) translate(0,0) scale(1.4);opacity:1}35%{transform:translate(calc(-50% + var(--tx) * .4),calc(-50% + var(--ty-apex))) scale(1.1);opacity:.9}100%{transform:translate(calc(-50% + var(--tx)),calc(-50% + var(--ty-drop))) scale(.1);opacity:0}}