:root{--bg: #fbfbfa;--grid: rgba(15, 23, 42, .055);--ink: #111827;--ink-soft: #6b7280;--line: rgba(15, 23, 42, .12);--panel: #ffffff;--panel-edge: rgba(15, 23, 42, .1);--root-bg: #1f2937;--focus: #2563eb;--shadow: 0 1px 2px rgba(15, 23, 42, .08), 0 8px 24px rgba(15, 23, 42, .08);--font: -apple-system, BlinkMacSystemFont, "Segoe UI", Inter, Roboto, "Helvetica Neue", sans-serif}@media(prefers-color-scheme:dark){:root{--bg: #16181d;--grid: rgba(255, 255, 255, .05);--ink: #e8eaed;--ink-soft: #9aa1ad;--line: rgba(255, 255, 255, .14);--panel: #1e2127;--panel-edge: rgba(255, 255, 255, .11);--root-bg: #394150;--focus: #60a5fa;--shadow: 0 1px 2px rgba(0, 0, 0, .4), 0 8px 24px rgba(0, 0, 0, .35)}}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:var(--font);color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;overscroll-behavior:none}.app{display:flex;flex-direction:column;height:100%}.toolbar{position:relative;z-index:30;display:flex;align-items:center;gap:16px;padding:0 14px;height:48px;flex:0 0 48px;background:var(--panel);border-bottom:1px solid var(--panel-edge)}.brand{display:flex;align-items:center;gap:8px}.brand-mark{width:10px;height:10px;border-radius:50%;background:#0d9488;box-shadow:7px -5px 0 -2.5px #d97706,7px 5px 0 -2.5px #2563eb}.brand-name{font-weight:600;font-size:14px;letter-spacing:-.01em}.doc-title{flex:1;min-width:0;display:flex;align-items:center;gap:8px;font-size:13px;color:var(--ink-soft);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.save-dot{flex:none;width:6px;height:6px;border-radius:50%;background:var(--focus);opacity:.9;transition:background .25s ease,opacity .25s ease}.save-dot.is-saved{background:var(--ink-soft);opacity:.35}.tools{display:flex;align-items:center;gap:4px}.tools button,.menu button{font:inherit;font-size:13px;color:var(--ink);background:transparent;border:1px solid transparent;border-radius:6px;padding:5px 9px;cursor:pointer}.tools button:hover:not(:disabled),.menu button:hover{background:color-mix(in srgb,var(--ink) 8%,transparent)}.tools button:disabled{color:var(--ink-soft);opacity:.45;cursor:default}.divider{width:1px;height:18px;margin:0 4px;background:var(--panel-edge)}.menu-wrap{position:relative}.menu{position:absolute;top:calc(100% + 6px);right:0;min-width:178px;display:flex;flex-direction:column;padding:4px;background:var(--panel);border:1px solid var(--panel-edge);border-radius:9px;box-shadow:var(--shadow)}.menu button{text-align:left;width:100%}.keys-panel{position:absolute;top:calc(100% + 6px);right:14px;display:grid;grid-template-columns:auto 1fr;gap:7px 14px;padding:14px 16px;background:var(--panel);border:1px solid var(--panel-edge);border-radius:10px;box-shadow:var(--shadow);font-size:13px}.keys-row{display:contents}.keys-row span{color:var(--ink-soft)}kbd{font:inherit;font-size:12px;padding:2px 6px;border:1px solid var(--panel-edge);border-bottom-width:2px;border-radius:5px;background:color-mix(in srgb,var(--ink) 4%,transparent);white-space:nowrap}.surface{position:relative;flex:1;overflow:hidden;touch-action:none;cursor:grab;background-color:var(--bg);background-image:radial-gradient(circle at 1px 1px,var(--grid) 1px,transparent 0);background-size:22px 22px}.surface:active,.surface.is-dragging{cursor:grabbing}.scene{position:absolute;left:0;top:0;transform-origin:0 0;will-change:transform}.branches{position:absolute;left:0;top:0;overflow:visible;pointer-events:none}.node-slot{position:absolute;left:0;top:0;width:0;height:0}.node-slot.is-lifted{z-index:20}.node{position:absolute;cursor:default;-webkit-user-select:none;user-select:none;border-radius:7px;outline:1.5px solid transparent;outline-offset:0;transition:outline-color .12s ease,background-color .12s ease}.node-root{background:var(--root-bg);color:#fff;border-radius:999px;text-align:center;box-shadow:var(--shadow)}.node-branch:hover{background:color-mix(in srgb,var(--branch) 10%,transparent)}.node.is-selected{outline-color:var(--branch);background:color-mix(in srgb,var(--branch) 12%,transparent)}.node-root.is-selected{outline-color:var(--focus);background:var(--root-bg)}.node.is-drop-target{outline-color:var(--focus);outline-style:dashed;outline-width:2px;background:color-mix(in srgb,var(--focus) 16%,transparent)}.node.is-dragging{opacity:.85;cursor:grabbing}.node-text{width:100%;white-space:pre}.node[data-side="-1"] .node-text{text-align:right}.node-root .node-text{text-align:center}.node-line{overflow:hidden;text-overflow:ellipsis}.node-input{width:100%;height:100%;margin:0;border:none;outline:none;resize:none;overflow:hidden;font-family:inherit;color:inherit;background:transparent;white-space:pre-wrap}.node-root .node-input{text-align:center}.collapser{position:absolute;bottom:-7px;width:15px;height:15px;margin:0 3px;padding:0;display:grid;place-items:center;font:600 9px/1 var(--font);color:#fff;background:var(--branch);border:none;border-radius:50%;cursor:pointer;opacity:0;transition:opacity .12s ease}.node:hover .collapser,.node.is-selected .collapser,.collapser.is-collapsed{opacity:1}.hint{position:absolute;left:50%;bottom:22px;transform:translate(-50%);display:flex;align-items:center;gap:6px;padding:8px 14px;font-size:13px;color:var(--ink-soft);background:var(--panel);border:1px solid var(--panel-edge);border-radius:999px;box-shadow:var(--shadow);pointer-events:none}
