@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";:root{--bg-primary: #e8f0e4;--bg-canvas: linear-gradient(180deg, #c9dff6 0%, #e8f0e4 40%, #d5e3c8 100%);--bg-ground: #8b7355;--bark-dark: #3d2815;--bark-mid: #5a3e28;--bark-light: #6b4c35;--bark-highlight: #8a6a4f;--leaf-bg: linear-gradient(135deg, #4a8c3f 0%, #3d7a34 50%, #357030 100%);--leaf-bg-hover: linear-gradient(135deg, #55a048 0%, #478c3c 50%, #3d7a34 100%);--leaf-border: #2d6527;--leaf-shadow: rgba(45, 101, 39, .4);--leaf-text: #f0f7ee;--root-bg: linear-gradient(135deg, #6b4c35 0%, #5a3e28 50%, #4e3220 100%);--root-border: #3d2815;--root-text: #f5ece3;--accent-green: #4a8c3f;--accent-gold: #c4a24f;--danger-color: #c94040;--text-primary: #2a1f14;--text-secondary: #5a4a3a;--glass-bg: rgba(255, 255, 255, .85);--glass-border: rgba(0, 0, 0, .1);--glass-shadow: 0 4px 20px rgba(0, 0, 0, .12);--font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--radius-sm: 16px;--radius-md: 28px;--radius-lg: 40px;--radius-leaf: 48px 16px 48px 16px;--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-smooth: .3s cubic-bezier(.4, 0, .2, 1);--transition-spring: .4s cubic-bezier(.34, 1.56, .64, 1)}[data-theme=dark]{--bg-primary: #1a1f16;--bg-canvas: linear-gradient(180deg, #1a2230 0%, #1a1f16 40%, #16200e 100%);--leaf-bg: linear-gradient(135deg, #2d5a27 0%, #245020 50%, #1e4419 100%);--leaf-bg-hover: linear-gradient(135deg, #357030 0%, #2d5a27 50%, #245020 100%);--leaf-border: #1a3a15;--leaf-shadow: rgba(30, 68, 25, .5);--leaf-text: #d0e8cc;--root-bg: linear-gradient(135deg, #4e3220 0%, #3d2815 50%, #2e1e0f 100%);--root-border: #241508;--root-text: #d4c4b0;--text-primary: #d4cfc8;--text-secondary: #a09585;--glass-bg: rgba(20, 24, 18, .9);--glass-border: rgba(255, 255, 255, .08);--glass-shadow: 0 4px 20px rgba(0, 0, 0, .4)}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html,body,#root{width:100%;height:100%;overflow:hidden;font-family:var(--font-family);background:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.app{width:100%;height:100%;position:relative}.ai-command-bar{position:fixed;bottom:24px;left:50%;transform:translate(-50%);z-index:1100;width:min(840px,calc(100vw - 48px));transition:box-shadow .2s ease,border-color .2s ease}.ai-command-config{display:grid;grid-template-columns:160px minmax(0,1fr) 220px;gap:8px;max-height:0;opacity:0;overflow:hidden;transition:max-height .25s ease,opacity .2s ease,margin .25s ease;margin-bottom:0}.ai-command-bar:hover .ai-command-config,.ai-command-config:focus-within{max-height:60px;opacity:1;margin-bottom:4px}.ai-command-select,.ai-command-key,.ai-command-model{border:1px solid rgba(0,0,0,.1);border-radius:12px;background:#fffffff2;color:#222;font-size:13px;font-family:var(--font-family);padding:10px 12px}.ai-command-select:focus,.ai-command-key:focus,.ai-command-model:focus{outline:none;border-color:#0003}.ai-command-inner{display:flex;align-items:center;gap:8px;padding:8px 12px;min-height:40px;border-radius:16px;background:#fffffff2;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(0,0,0,.1);box-shadow:0 4px 20px #0000001f;transition:border-color .2s ease,box-shadow .2s ease}.ai-command-bar--active .ai-command-inner{border-color:#00000026;box-shadow:0 6px 28px #00000026}.ai-command-icon{flex-shrink:0;font-size:16px;line-height:1;padding-bottom:4px;opacity:.4;color:#333}.ai-command-input{flex:1;border:none;background:transparent;color:#222;font-size:14px;line-height:1.4;font-family:var(--font-family);resize:none;overflow:hidden;min-height:20px;max-height:120px}.ai-command-input:focus{outline:none}.ai-command-input::placeholder{color:#0006}.ai-command-submit{flex-shrink:0;width:24px;height:24px;border:none;border-radius:6px;background:#00000014;color:#333;font-size:13px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;align-self:center;transition:background .15s ease}.ai-command-submit:hover:not(:disabled){background:#0000001f}.ai-command-submit:disabled{opacity:.5;cursor:default}.ai-command-note{margin:0;padding:0 14px;font-size:11px;color:#00000094;text-align:center;max-height:0;opacity:0;overflow:hidden;transition:max-height .25s ease,opacity .2s ease,margin .25s ease}.ai-command-bar:hover .ai-command-note{max-height:30px;opacity:1;margin:0 0 4px}.ai-command-error{margin:4px 0 0;padding:0 14px;font-size:12px;color:#ff8080}@media(max-width:820px){.ai-command-config{grid-template-columns:1fr}.ai-command-bar{width:calc(100vw - 20px);bottom:14px}}@keyframes aiSpin{to{transform:rotate(360deg)}}.ai-spinner{display:inline-block;width:14px;height:14px;border:2px solid rgba(0,0,0,.15);border-top-color:#333;border-radius:50%;animation:aiSpin .6s linear infinite}.canvas-container{width:100%;height:100%;position:relative;cursor:grab;overflow:hidden;background:var(--bg-canvas)}.canvas-container:active{cursor:grabbing}.canvas-inner{position:absolute;top:0;left:0;will-change:transform}.connectors-layer{position:absolute;top:0;left:0;overflow:visible;pointer-events:none}.branch-shape{filter:drop-shadow(1px 2px 3px rgba(0,0,0,.2))}.trunk-base{filter:drop-shadow(2px 3px 5px rgba(0,0,0,.25))}.tree-node{position:absolute;display:flex;flex-direction:column;align-items:center;gap:12px;cursor:pointer;transform-origin:center center;-webkit-user-select:none;user-select:none;touch-action:none;margin-left:-140px;margin-top:-44px;width:280px;z-index:1}.node-content{background:var(--leaf-bg);border:4px solid var(--leaf-border);border-radius:var(--radius-leaf);padding:20px 36px;min-width:140px;max-width:400px;text-align:center;position:relative;width:100%;box-shadow:0 3px 10px var(--leaf-shadow),inset 0 1px #ffffff26;transform-origin:center center;transform:scale(var(--depth-scale, 1));transition:transform var(--transition-fast),box-shadow var(--transition-fast),border-color var(--transition-fast);will-change:transform}.node-content:before{content:"";position:absolute;top:50%;left:20px;right:20px;height:2px;background:#ffffff1f;pointer-events:none}.tree-node:hover .node-content{background:var(--leaf-bg-hover);box-shadow:0 4px 12px var(--leaf-shadow);transform:scale(calc(var(--depth-scale, 1) * 1.05))}.tree-node-selected .node-content{border-color:var(--accent-gold);box-shadow:0 0 0 3px #c4a24f66,0 6px 16px var(--leaf-shadow);transform:scale(calc(var(--depth-scale, 1) * 1.05))}.tree-node-root{width:280px;margin-left:-140px}.tree-node-root .node-content{background:var(--root-bg);border:4px solid var(--root-border);border-radius:14px;padding:32px 28px;box-shadow:0 4px 14px #3d281580,inset 0 1px #ffffff14}.tree-node-root .node-content:before{background:#ffffff0f;height:4px;top:35%}.tree-node-root .node-content:after{content:"";position:absolute;top:60%;left:24px;right:24px;height:2px;background:#ffffff0d;pointer-events:none}.tree-node-root:hover .node-content{background:var(--root-bg);border-color:var(--bark-highlight)}.node-label{font-size:26px;font-weight:600;color:var(--leaf-text);line-height:1.4;word-break:break-word;display:block;text-shadow:0 1px 2px rgba(0,0,0,.3);position:relative;z-index:1}.tree-node-root .node-label{font-size:30px;font-weight:700;color:var(--root-text)}.node-input{font-family:var(--font-family);font-size:26px;font-weight:600;color:var(--leaf-text);background:#00000026;border:2px solid rgba(255,255,255,.2);border-radius:12px;outline:none;text-align:center;width:100%;padding:4px 12px;line-height:1.4;caret-color:#fff;position:relative;z-index:1}.tree-node-root .node-input{color:var(--root-text)}.node-input::placeholder{color:#fff6}.node-actions,.color-picker,.node-scale-controls{opacity:0;pointer-events:none;transition:opacity .15s ease .3s}.tree-node:hover .node-actions,.tree-node:hover .color-picker,.tree-node:hover .node-scale-controls{opacity:1;pointer-events:auto;transition:opacity .15s ease 0s}.node-actions{display:flex;gap:8px;justify-content:center;align-items:center}.node-btn{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;border:3px solid rgba(255,255,255,.3);background:#ffffffe6;cursor:pointer;color:var(--accent-green);font-weight:700;transition:background var(--transition-fast),color var(--transition-fast),transform var(--transition-fast),box-shadow var(--transition-fast);box-shadow:0 1px 4px #00000026;flex-shrink:0}.node-btn:hover{transform:scale(1.2)}.node-btn-scale{width:28px;height:28px;color:#888;background:#ffffffb3}.node-scale-controls{position:absolute;left:0;top:50%;transform:translate(-100%,-50%);display:flex;flex-direction:column;gap:2px;z-index:5;padding-right:6px}.node-btn-add:hover{background:var(--accent-green);color:#fff;border-color:var(--accent-green);box-shadow:0 2px 12px #4a8c3f66}.node-btn-delete:hover{background:var(--danger-color);color:#fff;border-color:var(--danger-color);box-shadow:0 2px 12px #c9404066}.toolbar{position:fixed;top:16px;left:50%;transform:translate(-50%);z-index:100;display:flex;align-items:center;gap:8px;padding:8px 14px;background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:var(--radius-lg);box-shadow:var(--glass-shadow)}.toolbar-group{display:flex;align-items:center;gap:4px}.toolbar-group+.toolbar-group{padding-left:8px;border-left:1px solid var(--glass-border)}.toolbar-title{font-size:14px;font-weight:700;color:var(--text-primary);padding:0 4px;white-space:nowrap}.toolbar-btn{display:flex;align-items:center;gap:6px;padding:6px 10px;border-radius:var(--radius-sm);border:1px solid transparent;background:transparent;color:var(--text-secondary);cursor:pointer;font-family:var(--font-family);font-size:12px;font-weight:500;transition:background var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast);white-space:nowrap}.toolbar-btn:hover:not(:disabled){background:#4a8c3f1a;color:var(--text-primary);border-color:#4a8c3f33}.toolbar-btn:disabled{opacity:.35;cursor:not-allowed}.toolbar-btn-text{display:none}@media(min-width:640px){.toolbar-btn-text{display:inline}}.toolbar-btn-danger:hover:not(:disabled){background:#c940401a;color:var(--danger-color);border-color:#c9404033}.toolbar-btn-flash{background:#4a8c3f26!important;color:var(--accent-green)!important;border-color:#4a8c3f4d!important}.confirm-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:10000;animation:fadeIn .15s ease-out}.confirm-dialog{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-lg);padding:28px;min-width:320px;max-width:400px;width:auto;box-shadow:0 16px 48px #0000004d;animation:scaleIn .2s var(--transition-spring)}.confirm-message{font-size:14px;font-weight:500;color:var(--text-primary);line-height:1.5;margin-bottom:20px}.confirm-actions{display:flex;gap:10px;justify-content:flex-end}.confirm-btn{padding:8px 18px;border-radius:var(--radius-sm);border:1px solid var(--glass-border);font-family:var(--font-family);font-size:13px;font-weight:500;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast)}.confirm-btn-cancel{background:transparent;color:var(--text-secondary)}.confirm-btn-cancel:hover{background:#0000000d}.confirm-btn-delete{background:var(--danger-color);color:#fff;border-color:var(--danger-color)}.confirm-btn-delete:hover{background:#b33030;border-color:#b33030}.color-picker{display:flex;align-items:center;position:relative;height:40px}.color-picker-trigger{width:36px;height:36px;border-radius:50%;background:conic-gradient(#e53935,#fb8c00,#fdd835,#43a047,#1e88e5,#8e24aa,#00acc1,#6d4c41,#e53935 360deg);border:4px solid rgba(255,255,255,.3);cursor:pointer;flex-shrink:0;padding:0;transition:transform .15s ease,border-color .15s ease;z-index:2}.color-picker-trigger:hover{transform:scale(1.15);border-color:#fff9}.color-picker-tray{position:absolute;left:calc(100% + 6px);top:50%;transform:translateY(-50%);display:flex;gap:6px;overflow:hidden;max-width:0;opacity:0;transition:max-width .25s ease,opacity .2s ease,padding .25s ease;padding:0;background:var(--glass-bg);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-radius:12px;z-index:100;white-space:nowrap}.color-picker:hover .color-picker-tray{max-width:480px;opacity:1;padding:6px 10px}.color-dot{width:28px;height:28px;border-radius:50%;border:4px solid transparent;cursor:pointer;padding:0;flex-shrink:0;transition:transform .12s ease,border-color .12s ease}.color-dot:hover{transform:scale(1.3)}.color-dot-active{border-color:var(--accent-gold)!important;box-shadow:0 0 0 1px #c4a24f66}.color-dot-default{background:linear-gradient(135deg,#888,#ccc);position:relative}.color-dot-default:after{content:"↺";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:20px;color:#555;line-height:1}.tree-node.metaphor-tree.has-node-color .node-content{background:var(--node-color)!important;border-color:var(--node-color)!important;filter:brightness(1.05)}.tree-node.metaphor-tree.has-node-color:hover .node-content{filter:brightness(1.15)}.tree-node.metaphor-tree.has-node-color.tree-node-selected .node-content{box-shadow:0 0 0 3px #fff6,0 6px 16px #0000004d!important}.tree-node.metaphor-galaxy.has-node-color .node-content{background:radial-gradient(circle at 30% 30%,var(--node-color),#212c52)!important;border-color:var(--node-color)!important;filter:brightness(1.05)}.tree-node.metaphor-galaxy.has-node-color:hover .node-content{background:radial-gradient(circle at 30% 30%,var(--node-color),#2d3b66)!important;filter:brightness(1.15)}.tree-node.metaphor-galaxy.has-node-color.tree-node-selected .node-content{box-shadow:0 0 0 3px #fff6,inset -4px -4px 12px #0006!important}.tree-node.metaphor-neural.has-node-color .node-content{border-color:var(--node-color)!important;box-shadow:0 0 12px color-mix(in srgb,var(--node-color) 40%,transparent),inset 0 2px 6px color-mix(in srgb,var(--node-color) 20%,transparent)!important}.tree-node.metaphor-neural.has-node-color:hover .node-content{box-shadow:0 0 18px color-mix(in srgb,var(--node-color) 50%,transparent),inset 0 2px 6px color-mix(in srgb,var(--node-color) 30%,transparent)!important}.tree-node.metaphor-neural.has-node-color.tree-node-selected .node-content{box-shadow:0 0 0 3px color-mix(in srgb,var(--node-color) 50%,transparent),0 0 15px color-mix(in srgb,var(--node-color) 30%,transparent)!important}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes leafAppear{0%{opacity:0;transform:scale(.5)}to{opacity:1}}@keyframes sway{0%,to{transform:rotate(0)}50%{transform:rotate(.5deg)}}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--bark-mid);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--bark-light)}:root,[data-tree-theme=forest]{--bark-outline: #2e1e0f}[data-tree-theme=forest]{--leaf-bg-l1: linear-gradient(135deg, #4a8c3f 0%, #3e7b34 50%, #326928 100%);--leaf-bg-l2: linear-gradient(135deg, #539846 0%, #46863b 50%, #39732f 100%);--leaf-bg-l3: linear-gradient(135deg, #5ca44f 0%, #4f9142 50%, #407d35 100%);--leaf-bg-l4: linear-gradient(135deg, #6ab15b 0%, #5a9d4a 50%, #48863b 100%);--leaf-bg-l5: linear-gradient(135deg, #78bd68 0%, #64a854 50%, #509043 100%)}[data-tree-theme=forest][style*="--depth-level: 1"]{--leaf-bg: var(--leaf-bg-l1)}[data-tree-theme=forest][style*="--depth-level: 2"]{--leaf-bg: var(--leaf-bg-l2)}[data-tree-theme=forest][style*="--depth-level: 3"]{--leaf-bg: var(--leaf-bg-l3)}[data-tree-theme=forest][style*="--depth-level: 4"]{--leaf-bg: var(--leaf-bg-l4)}[data-tree-theme=forest][style*="--depth-level: 5"],[data-tree-theme=forest][style*="--depth-level: 6"],[data-tree-theme=forest][style*="--depth-level: 7"],[data-tree-theme=forest][style*="--depth-level: 8"],[data-tree-theme=forest][style*="--depth-level: 9"]{--leaf-bg: var(--leaf-bg-l5)}[data-tree-theme=forest] .bark-stop-1,:root .bark-stop-1{stop-color:#6b4c35}[data-tree-theme=forest] .bark-stop-2,:root .bark-stop-2{stop-color:#5a3e28}[data-tree-theme=forest] .bark-stop-3,:root .bark-stop-3{stop-color:#4e3220}[data-tree-theme=forest] .bark-stop-4,:root .bark-stop-4{stop-color:#3d2815}[data-tree-theme=cherry]{--bark-dark: #3a2035;--bark-mid: #4a3040;--bark-light: #5c3d50;--bark-highlight: #7a5068;--bark-outline: #2a1525;--leaf-bg: linear-gradient(135deg, #d4729a 0%, #c4608a 50%, #b85080 100%);--leaf-bg-hover: linear-gradient(135deg, #e080a8 0%, #d4729a 50%, #c4608a 100%);--leaf-border: #a04570;--leaf-shadow: rgba(180, 80, 128, .4);--leaf-text: #fff5f8;--root-bg: linear-gradient(135deg, #5c3d50 0%, #4a3040 50%, #3a2035 100%);--root-border: #2a1525;--root-text: #f0dde5;--accent-green: #d4729a}[data-tree-theme=cherry]{--leaf-bg-l1: linear-gradient(135deg, #d4729a 0%, #c4608a 50%, #b85080 100%);--leaf-bg-l2: linear-gradient(135deg, #de82a6 0%, #cc7096 50%, #c0608c 100%);--leaf-bg-l3: linear-gradient(135deg, #e892b2 0%, #d680a2 50%, #c87096 100%);--leaf-bg-l4: linear-gradient(135deg, #f2a4c0 0%, #df90b0 50%, #d080a2 100%);--leaf-bg-l5: linear-gradient(135deg, #fbb6cd 0%, #e8a0be 50%, #d890b0 100%)}[data-tree-theme=cherry][style*="--depth-level: 1"]{--leaf-bg: var(--leaf-bg-l1)}[data-tree-theme=cherry][style*="--depth-level: 2"]{--leaf-bg: var(--leaf-bg-l2)}[data-tree-theme=cherry][style*="--depth-level: 3"]{--leaf-bg: var(--leaf-bg-l3)}[data-tree-theme=cherry][style*="--depth-level: 4"]{--leaf-bg: var(--leaf-bg-l4)}[data-tree-theme=cherry][style*="--depth-level: 5"],[data-tree-theme=cherry][style*="--depth-level: 6"],[data-tree-theme=cherry][style*="--depth-level: 7"],[data-tree-theme=cherry][style*="--depth-level: 8"],[data-tree-theme=cherry][style*="--depth-level: 9"]{--leaf-bg: var(--leaf-bg-l5)}[data-tree-theme=cherry] .bark-stop-1{stop-color:#5c3d50}[data-tree-theme=cherry] .bark-stop-2{stop-color:#4a3040}[data-tree-theme=cherry] .bark-stop-3{stop-color:#3a2035}[data-tree-theme=cherry] .bark-stop-4{stop-color:#2a1525}[data-tree-theme=autumn]{--bark-dark: #3d2815;--bark-mid: #5a3e28;--bark-light: #6b4c35;--bark-highlight: #8a6a4f;--bark-outline: #2e1e0f;--leaf-bg: linear-gradient(135deg, #d48a3c 0%, #c47830 50%, #b56820 100%);--leaf-bg-hover: linear-gradient(135deg, #e09848 0%, #d48a3c 50%, #c47830 100%);--leaf-border: #a06020;--leaf-shadow: rgba(180, 104, 32, .4);--leaf-text: #fff8ee;--root-bg: linear-gradient(135deg, #6b4c35 0%, #5a3e28 50%, #4e3220 100%);--root-border: #3d2815;--root-text: #f5ece3;--accent-green: #d48a3c}[data-tree-theme=autumn]{--leaf-bg-l1: linear-gradient(135deg, #d48a3c 0%, #c47830 50%, #b56820 100%);--leaf-bg-l2: linear-gradient(135deg, #df9845 0%, #cd8638 50%, #bc7428 100%);--leaf-bg-l3: linear-gradient(135deg, #e8a64e 0%, #d69440 50%, #c58230 100%);--leaf-bg-l4: linear-gradient(135deg, #f2b458 0%, #e0a248 50%, #cd9038 100%);--leaf-bg-l5: linear-gradient(135deg, #fcc262 0%, #ebb050 50%, #d69e40 100%)}[data-tree-theme=autumn][style*="--depth-level: 1"]{--leaf-bg: var(--leaf-bg-l1)}[data-tree-theme=autumn][style*="--depth-level: 2"]{--leaf-bg: var(--leaf-bg-l2)}[data-tree-theme=autumn][style*="--depth-level: 3"]{--leaf-bg: var(--leaf-bg-l3)}[data-tree-theme=autumn][style*="--depth-level: 4"]{--leaf-bg: var(--leaf-bg-l4)}[data-tree-theme=autumn][style*="--depth-level: 5"],[data-tree-theme=autumn][style*="--depth-level: 6"],[data-tree-theme=autumn][style*="--depth-level: 7"],[data-tree-theme=autumn][style*="--depth-level: 8"],[data-tree-theme=autumn][style*="--depth-level: 9"]{--leaf-bg: var(--leaf-bg-l5)}[data-tree-theme=autumn] .bark-stop-1{stop-color:#6b4c35}[data-tree-theme=autumn] .bark-stop-2{stop-color:#5a3e28}[data-tree-theme=autumn] .bark-stop-3{stop-color:#4e3220}[data-tree-theme=autumn] .bark-stop-4{stop-color:#3d2815}.theme-picker{display:flex;gap:8px;justify-content:center;padding:6px 12px;background:#ffffffd9;border-radius:20px;box-shadow:0 2px 10px #0000001f;animation:fadeInUp .2s ease-out both}.theme-swatch{display:flex;align-items:center;gap:2px;width:36px;height:22px;border-radius:11px;border:2px solid rgba(0,0,0,.1);cursor:pointer;overflow:hidden;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease;padding:0;background:transparent}.theme-swatch:hover{transform:scale(1.15);border-color:#00000040}.theme-swatch-active{border-color:var(--accent-gold);box-shadow:0 0 0 2px #c4a24f66}.swatch-bark,.swatch-leaf{display:block;width:50%;height:100%}.bg-picker-container{position:fixed;top:16px;left:16px;z-index:100}.bg-picker-toggle{width:38px;height:38px;border-radius:12px;border:1px solid var(--glass-border);background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:var(--glass-shadow);cursor:pointer;font-size:18px;display:flex;align-items:center;justify-content:center;transition:transform .15s ease,box-shadow .15s ease}.bg-picker-toggle:hover{transform:scale(1.08);box-shadow:0 4px 24px #0000002e}.bg-picker-dropdown{position:absolute;top:46px;left:0;background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:14px;padding:12px;box-shadow:var(--glass-shadow);animation:fadeInUp .15s ease-out both;min-width:140px}.bg-picker-label{font-size:11px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;display:block;margin-bottom:8px}.bg-picker-options{display:flex;gap:6px}.bg-option{width:32px;height:32px;border-radius:8px;border:2px solid rgba(0,0,0,.1);cursor:pointer;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease;padding:0}.bg-option:hover{transform:scale(1.15);border-color:#00000040}.bg-option-active{border-color:var(--accent-gold);box-shadow:0 0 0 2px #c4a24f66}.fab-button{position:fixed;bottom:24px;right:24px;z-index:100;width:52px;height:52px;border-radius:50%;border:none;background:var(--accent-green);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 16px #00000040;transition:transform .15s ease,box-shadow .15s ease,background .15s ease}.fab-button:hover{transform:scale(1.1);box-shadow:0 6px 24px #0000004d}.fab-panel{position:fixed;bottom:86px;right:24px;z-index:100;background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:16px;padding:14px 18px;box-shadow:var(--glass-shadow);animation:fadeInUp .15s ease-out both;text-align:center}.fab-panel-label{font-size:11px;font-weight:600;color:var(--text-secondary);display:block;margin-bottom:10px;white-space:nowrap}.fab-options{display:flex;gap:12px;justify-content:center}.fab-draggable{display:flex;flex-direction:column;align-items:center;gap:6px;cursor:grab;padding:10px 16px;border-radius:12px;border:2px dashed var(--glass-border);transition:background .15s ease,border-color .15s ease;-webkit-user-select:none;user-select:none;touch-action:none;min-width:76px}.fab-draggable:hover{background:#0000000a;border-color:var(--bark-mid)}.fab-draggable:active,.fab-dragging{cursor:grabbing}.fab-icon{display:flex;flex-direction:column;align-items:center;gap:0;width:28px;height:28px;justify-content:flex-end;position:relative}.fab-tree-bar{width:12px;height:28px;background:linear-gradient(135deg,var(--bark-light),var(--bark-dark));border-radius:3px;position:absolute;bottom:0}.fab-tree-crown{width:28px;height:16px;background:var(--accent-green);border-radius:50% 50% 4px 4px;position:absolute;top:0}.fab-galaxy-core{width:18px;height:18px;background:radial-gradient(circle,#ffd54f,#ff8f00);border-radius:50%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 10px #ffd54f99}.fab-galaxy-ring{width:32px;height:10px;border:2px solid rgba(171,71,188,.8);border-radius:50%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) rotate(-15deg)}.fab-text{font-size:11px;font-weight:600;color:var(--text-secondary)}.fab-drag-ghost{position:fixed;z-index:10000;pointer-events:none;transform:translate(-50%,-50%) scale(1.2);opacity:.85;filter:drop-shadow(0 4px 12px rgba(0,0,0,.3))}.tree-node.metaphor-galaxy{margin-top:-90px}.tree-node.metaphor-galaxy .node-content{border-radius:50%;width:180px;height:180px;min-width:0;display:flex;align-items:center;justify-content:center;padding:20px;background:radial-gradient(circle at 30% 30%,#4a5c96,#212c52);border:4px solid #5a75bd;box-shadow:0 4px 12px #0006,inset -4px -4px 12px #0006,inset 2px 2px 8px #fff3;transform-origin:center center;transform:scale(var(--depth-scale, 1));transition:all .2s cubic-bezier(.34,1.56,.64,1);will-change:transform}.tree-node.metaphor-galaxy:hover .node-content{transform:scale(calc(var(--depth-scale, 1) * 1.05));background:radial-gradient(circle at 30% 30%,#5a6ca6,#2d3b66)}.tree-node.metaphor-galaxy .node-content:before{display:none}.tree-node.metaphor-galaxy .node-label{color:#e0e8ff;font-size:22px;z-index:3}.tree-node-root.metaphor-galaxy{margin-top:-140px}.tree-node-root.metaphor-galaxy .node-content{width:280px;height:280px;border-radius:50%;background:transparent;border:none;box-shadow:none;transform:scale(var(--depth-scale, 1))}.tree-node-root.metaphor-galaxy:hover .node-content{transform:scale(calc(var(--depth-scale, 1) * 1.05));background:transparent;border:none}.tree-node-root.metaphor-galaxy .node-content:after{display:none}.tree-node-root.metaphor-galaxy .node-label{font-size:28px;color:#fff;text-shadow:0 2px 8px rgba(0,0,0,.8)}.tree-node-selected.metaphor-galaxy .node-content{border-color:#ffd54f!important;box-shadow:0 0 0 3px #ffd54f66,inset -4px -4px 12px #0006!important}.tree-node-root.tree-node-selected.metaphor-galaxy .node-content{border:4px dashed rgba(255,213,79,.6)!important;box-shadow:none!important}.fab-neural-core{width:16px;height:16px;background:radial-gradient(circle,#e0ffff,#00e5ff);border-radius:50%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 8px #00e5ff99}.fab-neural-dots{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:28px;height:28px;border:2px dotted rgba(0,229,255,.5);border-radius:50%}@keyframes neuronPulse{0%,to{box-shadow:0 0 20px #00e5ff80,0 0 50px #00e5ff33,0 0 80px #00b4dc1a}50%{box-shadow:0 0 30px #00e5ffb3,0 0 70px #00e5ff4d,0 0 100px #00b4dc26}}@keyframes coreGlow{0%,to{opacity:.6;transform:translate(-50%,-50%) scale(1)}50%{opacity:.9;transform:translate(-50%,-50%) scale(1.15)}}@keyframes synapseSignal{0%{stroke-dashoffset:0}to{stroke-dashoffset:-32}}.synapse-flow{animation:synapseSignal 1.5s linear infinite}.tree-node.metaphor-neural{margin-top:-70px}.tree-node.metaphor-neural .node-content{border-radius:50%;width:140px;height:140px;min-width:0;display:flex;align-items:center;justify-content:center;padding:18px;background:radial-gradient(circle at 50% 50%,#fffffff2,#b4f0ffcc 20%,#00c8f080,#008cb440 70%,#0050781a);border:2px solid rgba(0,220,255,.6);animation:neuronPulse 3s ease-in-out infinite;transform-origin:center center;transform:scale(var(--depth-scale, 1));transition:transform .25s cubic-bezier(.34,1.56,.64,1),border-color .2s ease;will-change:transform;position:relative;overflow:visible}.tree-node.metaphor-neural .node-content:before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:40%;height:40%;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.9),rgba(0,229,255,.3) 60%,transparent 80%);animation:coreGlow 3s ease-in-out infinite;pointer-events:none;z-index:0}.tree-node.metaphor-neural .node-content:after{content:"";position:absolute;inset:-6px;border-radius:50%;border:1.5px solid rgba(0,229,255,.25);pointer-events:none}.tree-node.metaphor-neural:hover .node-content{transform:scale(calc(var(--depth-scale, 1) * 1.08));border-color:#00e5ffb3}.tree-node.metaphor-neural .node-label{color:#0a3040;font-size:15px;font-weight:600;z-index:3;text-shadow:0 0 8px rgba(255,255,255,.5)}.tree-node-root.metaphor-neural{margin-top:-110px}.tree-node-root.metaphor-neural .node-content{width:220px;height:220px;border-radius:50%;background:radial-gradient(circle at 50% 50%,#fff,#c8f5ffd9 15%,#00dcff80,#00a0c833 65%,#0050780d);border:3px solid rgba(0,220,255,.5);box-shadow:0 0 40px #00e5ff66,0 0 90px #00e5ff26;animation:neuronPulse 4s ease-in-out infinite;transform:scale(var(--depth-scale, 1));padding:30px}.tree-node-root.metaphor-neural .node-content:before{width:50%;height:50%}.tree-node-root.metaphor-neural .node-content:after{inset:-10px;border-width:1.5px;border-color:#00c8f014}.tree-node-root.metaphor-neural:hover .node-content{transform:scale(calc(var(--depth-scale, 1) * 1.05));border-color:#00e5ff99}.tree-node-root.metaphor-neural .node-label{font-size:22px;font-weight:600;color:#0a3040;text-shadow:0 0 10px rgba(255,255,255,.6)}.tree-node-selected.metaphor-neural .node-content{border-color:#00e5ffcc!important;box-shadow:0 0 0 4px #00e5ff26,0 0 30px #00e5ff66,0 0 80px #00e5ff26,inset 0 0 20px #00e5ff1a!important;animation:none!important}.tree-node-root.tree-node-selected.metaphor-neural .node-content{border-color:#00e5ffcc!important;box-shadow:0 0 0 5px #00e5ff1f,0 0 40px #00e5ff59,0 0 100px #00e5ff1a,inset 0 0 30px #00e5ff1a!important;animation:none!important}.canvas-toolbar{position:fixed;bottom:24px;left:24px;display:flex;background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:14px;padding:4px;gap:2px;box-shadow:0 8px 32px #00000026;z-index:1000;align-items:center}.canvas-toolbar .toolbar-group{position:relative;display:flex}.canvas-toolbar .toolbar-divider{width:1px;height:20px;background:var(--glass-border);margin:0 2px}.canvas-toolbar .toolbar-btn{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:10px;border:1px solid transparent;background:transparent;color:var(--text-secondary);cursor:pointer;transition:all .15s ease;padding:0;font-size:0}.canvas-toolbar .toolbar-btn:hover{background:#0000000f;color:var(--text-primary)}.canvas-toolbar .toolbar-btn.active{background:#00000059;color:#fff;border-color:#fff3}.canvas-toolbar .toolbar-btn-color{font-size:inherit}.color-indicator{width:16px;height:16px;border-radius:50%;border:2px solid rgba(255,255,255,.4)}.toolbar-submenu{position:absolute;bottom:calc(100% + 8px);left:0;background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:12px;padding:10px;display:flex;flex-direction:column;gap:8px;min-width:180px;box-shadow:0 8px 32px #0003;animation:fadeInUp .15s ease-out;transform-origin:bottom left}.toolbar-submenu:after{content:"";position:absolute;bottom:-12px;left:0;right:0;height:12px}.submenu-row{display:flex;align-items:center;gap:8px;color:var(--text-primary);font-size:12px;font-weight:500}.submenu-row label{flex-shrink:0;min-width:28px;color:var(--text-secondary)}.submenu-value{font-size:11px;color:var(--text-secondary);min-width:36px;text-align:right}.submenu-number{width:48px;background:#0000004d;border:1px solid rgba(255,255,255,.15);border-radius:6px;color:#fff;font-size:12px;padding:3px 6px;text-align:center;outline:none;-moz-appearance:textfield}.submenu-number::-webkit-inner-spin-button,.submenu-number::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.submenu-number:focus{border-color:#ffffff59}.submenu-row input[type=range]{flex:1;height:4px;-webkit-appearance:none;appearance:none;background:#00000026;border-radius:2px;outline:none}.submenu-row input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:14px;height:14px;border-radius:50%;background:var(--accent-green);border:2px solid #fff;box-shadow:0 1px 4px #0003;cursor:pointer}.color-picker-row{display:flex;flex-wrap:wrap;gap:4px}.color-swatch{width:22px;height:22px;border-radius:50%;border:2px solid transparent;cursor:pointer;transition:transform .1s ease,border-color .1s ease;padding:0}.color-swatch:hover{transform:scale(1.15)}.color-swatch.active{border-color:#fff;transform:scale(1.1);box-shadow:0 0 0 1px #0003}.shape-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:4px}.shape-swatch{width:38px;height:38px;border-radius:8px;border:1px solid var(--glass-border);background:transparent;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-secondary);transition:all .12s ease;padding:0}.shape-swatch:hover{background:#0000000f;color:var(--text-primary);border-color:#00000026}.shape-swatch.active{background:#00000059;color:#fff;border-color:#ffffff4d}.canvas-text-annotation{position:relative}.canvas-text-annotation:hover .delete-text-btn{opacity:1}.canvas-text-input{background:transparent;border:none;border-bottom:2px solid transparent;outline:none;text-align:center;font-family:inherit;font-size:inherit;color:inherit;min-width:60px;field-sizing:content;transition:border-color .15s ease}.canvas-text-input:focus{border-bottom-color:#fff6}.canvas-text-input::placeholder{color:#ffffff59;font-style:italic}.delete-text-btn{position:absolute;top:-8px;right:-16px;background:#ff5252;color:#fff;border:none;border-radius:50%;width:20px;height:20px;font-size:14px;line-height:1;cursor:pointer;opacity:0;transition:opacity .15s;display:flex;align-items:center;justify-content:center}.canvas-container.mode-eraser{cursor:crosshair}.eraser-target{transition:opacity .1s ease}.eraser-target:hover{opacity:.4!important;filter:saturate(0)}.canvas-container.mode-brush{cursor:none}.canvas-container.mode-text{cursor:text}.canvas-container.mode-shape{cursor:crosshair}.fab-container{position:fixed;bottom:24px;right:24px;z-index:100;display:flex;flex-direction:column;align-items:flex-end}.fab-button{width:40px;height:40px;border-radius:12px;border:1px solid var(--glass-border);background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);color:var(--text-primary);cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 16px #0000001f;transition:transform .15s ease,box-shadow .15s ease}.fab-button:hover{transform:scale(1.08);box-shadow:0 6px 20px #0000002e}.fab-panel{position:absolute;bottom:calc(100% + 4px);right:0;background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:14px;padding:12px 16px;box-shadow:0 8px 32px #00000026;animation:fadeInUp .15s ease-out both;text-align:center;white-space:nowrap}.fab-panel:after{content:"";position:absolute;bottom:-8px;left:0;right:0;height:8px}.tree-node{z-index:1}.tree-node:hover{z-index:100}.tree-node-selected{z-index:99}.node-actions,.color-picker,.node-scale-controls{z-index:200}@keyframes nodeAppear{0%{opacity:0;transform:scale(var(--depth-scale, 1)) scale(.7)}to{opacity:1;transform:scale(var(--depth-scale, 1))}}.node-content{animation:nodeAppear .3s cubic-bezier(.34,1.56,.64,1) both}
