:root,:root[data-theme=dark]{--bg: #0e1116;--bg-2: #161b22;--bg-3: #1c2430;--panel: #11161d;--line: #2a3340;--line-2: #3a4655;--text: #e6edf3;--muted: #8b97a7;--accent: #4f8a4f;--accent-2: #6aa84f;--danger: #c0504d;--grid: #1a2029;--hover: #243042;--toolbar-bg: linear-gradient(180deg, #1a2129, #11161d);--controls-bg: rgba(17, 22, 29, .85);--shadow: 0 6px 24px rgba(0, 0, 0, .4);font-synthesis:none}:root[data-theme=light]{--bg: #eef1f5;--bg-2: #ffffff;--bg-3: #f3f5f8;--panel: #ffffff;--line: #d7dde4;--line-2: #c2cad4;--text: #1b2430;--muted: #5d6878;--accent: #4f8a4f;--accent-2: #3f7a32;--danger: #c0504d;--grid: #dfe5ec;--hover: #e4e9ef;--toolbar-bg: linear-gradient(180deg, #ffffff, #eef1f5);--controls-bg: rgba(255, 255, 255, .9);--shadow: 0 6px 24px rgba(60, 80, 110, .18)}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--text);font-family:Segoe UI,Roboto,system-ui,-apple-system,sans-serif;font-size:14px;-webkit-font-smoothing:antialiased}.app{display:flex;flex-direction:column;height:100vh}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 16px;height:56px;background:var(--toolbar-bg);border-bottom:1px solid var(--line);z-index:20}.brand{display:flex;align-items:center;gap:10px}.brand-mark{width:28px;height:28px;padding:4px;background:#fff;border:1px solid var(--line-2);border-radius:7px;box-sizing:border-box;object-fit:contain;display:block}.brand-name{font-size:19px;letter-spacing:.5px}.brand-name strong{color:var(--accent-2)}.brand-tag{margin-left:10px;padding:3px 8px;font-size:11px;color:var(--muted);border:1px solid var(--line);border-radius:999px;letter-spacing:.4px}.toolbar-actions{display:flex;align-items:center;gap:8px}.divider{width:1px;height:24px;background:var(--line);margin:0 4px}.segmented{display:inline-flex;border:1px solid var(--line-2);border-radius:7px;overflow:hidden}.segmented button{background:var(--bg-3);color:var(--muted);border:none;padding:7px 11px;font-size:12px;cursor:pointer;transition:background .12s,color .12s}.segmented button+button{border-left:1px solid var(--line-2)}.segmented button:hover{background:var(--hover);color:var(--text)}.segmented button.active{background:var(--accent);color:#fff}.segmented.inline{display:flex;width:100%}.segmented.inline button{flex:1;padding:8px 6px;font-size:13px}.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--line-2);background:var(--bg-3);color:var(--text);padding:7px 12px;border-radius:7px;font-size:13px;cursor:pointer;transition:background .12s,border-color .12s,transform .05s}.btn:hover{background:var(--hover);border-color:var(--line-2)}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.4;cursor:not-allowed}.btn.icon{padding:7px 11px;font-size:16px;line-height:1}.btn.primary{background:var(--accent);border-color:var(--accent-2)}.btn.primary:hover{background:var(--accent-2)}.btn.danger{background:#3a2222;border-color:#5e3232;color:#f0c9c7}.btn.danger:hover{background:var(--danger);color:#fff}.dropdown{position:relative}.menu{position:absolute;top:calc(100% + 6px);right:0;min-width:240px;background:var(--bg-2);border:1px solid var(--line-2);border-radius:10px;box-shadow:var(--shadow);padding:6px;z-index:50}.menu-item{display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;text-align:left;background:transparent;border:none;color:var(--text);padding:8px 10px;border-radius:7px;cursor:pointer}.menu-item:hover{background:var(--bg-3)}.menu-item small{color:var(--muted);font-size:11px}.workspace{flex:1;display:flex;min-height:0}.chart-wrap{position:relative;flex:1;min-width:0;background-color:var(--bg);background-image:linear-gradient(var(--grid) 1px,transparent 1px),linear-gradient(90deg,var(--grid) 1px,transparent 1px);background-size:28px 28px;overflow:hidden;cursor:default}.chart-svg{display:block}.chart-controls{position:absolute;left:14px;bottom:14px;display:flex;align-items:center;gap:6px;background:var(--controls-bg);border:1px solid var(--line-2);border-radius:8px;padding:5px;z-index:10;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.chart-controls button{width:30px;height:30px;border:none;background:var(--bg-3);color:var(--text);border-radius:6px;cursor:pointer;font-size:15px}.chart-controls button:hover{background:var(--hover)}.chart-controls button.fit{color:var(--accent-2);font-size:17px}.chart-controls button.fit:hover{background:var(--accent);color:#fff}.zoom-label{color:var(--muted);font-size:12px;padding:0 6px;min-width:42px;text-align:center}.empty-hint{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;color:var(--muted);pointer-events:none}.link{fill:none;stroke:var(--line-2);stroke-width:1.6}.drag-ghost{stroke:var(--accent-2);stroke-width:2;stroke-dasharray:5 5;opacity:.8}.node-halo{fill:#6aa84f14;stroke:var(--accent-2);stroke-width:1.5}.node-halo.drop{fill:#4f8adc29;stroke:#4f8adc;stroke-width:2;stroke-dasharray:4 3}.task-label{font-family:Segoe UI,system-ui,sans-serif;font-size:11px;font-weight:700;letter-spacing:.4px;fill:#0e1116;dominant-baseline:middle}.editor{width:320px;flex-shrink:0;background:var(--panel);border-left:1px solid var(--line);padding:16px;overflow-y:auto}.editor.empty{display:flex;align-items:center}.muted{color:var(--muted)}.editor-preview{display:grid;place-items:center;background:#fff;border:1px solid var(--line-2);border-radius:10px;padding:14px;margin-bottom:16px;min-height:96px}.section-sep{margin:18px 0 12px;padding-top:14px;border-top:1px solid var(--line);font-size:11px;text-transform:uppercase;letter-spacing:.8px;color:var(--accent-2);font-weight:700}.hint-note{display:block;margin-top:5px;font-size:11px;color:var(--muted)}.field{margin-bottom:12px}.field-row{display:flex;gap:10px}.field-row .field{flex:1}.field label{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:var(--muted);margin-bottom:5px}.field input,.field select{width:100%;background:var(--bg-3);color:var(--text);border:1px solid var(--line-2);border-radius:7px;padding:8px 9px;font-size:13px;outline:none}.field input:focus,.field select:focus{border-color:var(--accent-2)}.field select{cursor:pointer}.editor-actions{display:flex;gap:8px;margin:16px 0 12px}.editor-actions .btn{flex:1}.sidc-readout{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 10px;background:var(--bg-3);border:1px solid var(--line);border-radius:7px;font-size:12px}.sidc-readout span{color:var(--muted)}.sidc-readout code{color:var(--accent-2);letter-spacing:1px}.statusbar{display:flex;align-items:center;gap:16px;height:30px;padding:0 16px;background:var(--bg-2);border-top:1px solid var(--line);font-size:12px;color:var(--text)}.statusbar .muted{font-size:11px}.btn.icon.lang{font-size:12px;font-weight:700;letter-spacing:.5px;min-width:34px}.onb-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#06090da8;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:grid;place-items:center;z-index:200;animation:onb-fade .18s ease}@keyframes onb-fade{0%{opacity:0}to{opacity:1}}.onb-card{width:min(460px,92vw);background:var(--bg-2);border:1px solid var(--line-2);border-radius:16px;box-shadow:0 20px 60px #00000080;padding:26px 26px 18px;position:relative;text-align:center}.onb-skip{position:absolute;top:12px;right:12px;background:transparent;border:none;color:var(--muted);font-size:12px;cursor:pointer}.onb-skip:hover{color:var(--text)}.onb-icon{font-size:40px;line-height:1;margin:6px 0 12px;color:var(--accent-2)}.onb-title{margin:0 0 10px;font-size:20px;color:var(--text)}.onb-body{margin:0 auto 18px;max-width:38ch;color:var(--muted);font-size:14px;line-height:1.55}.onb-dots{display:flex;justify-content:center;gap:8px;margin-bottom:18px}.onb-dots .dot{width:8px;height:8px;border-radius:50%;background:var(--line-2);cursor:pointer;transition:background .15s,transform .15s}.onb-dots .dot.active{background:var(--accent-2);transform:scale(1.25)}.onb-actions{display:flex;align-items:center;justify-content:space-between;gap:12px}.onb-step{color:var(--muted);font-size:12px}.onb-buttons{display:flex;gap:8px}.editor::-webkit-scrollbar{width:10px}.editor::-webkit-scrollbar-thumb{background:var(--line-2);border-radius:6px}.editor::-webkit-scrollbar-track{background:transparent}
