*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}input[type=number]{-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}html,body,#root{width:100%;height:100%;overflow:hidden}body{background:var(--bg);color:var(--text);font-family:var(--font-ui);-webkit-font-smoothing:var(--font-smoothing);-moz-osx-font-smoothing:var(--font-smoothing);overscroll-behavior:none}::-webkit-scrollbar{width:var(--scrollbar-width)}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--scrollbar);border-radius:var(--scrollbar-radius);box-shadow:var(--shadow-raised)}::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-hover)}canvas{-webkit-user-select:none;user-select:none}[contenteditable][data-placeholder]:empty:before{content:attr(data-placeholder);color:var(--text-muted);pointer-events:none}:root[data-theme=dark]{--bg: #0a0a12;--text: #e2e8f0;--surface: rgba(15,15,25,.92);--surface-overlay: rgba(15,15,25,.97);--surface-dim: rgba(12,12,20,.92);--surface-glass: rgba(12,12,22,.82);--border: rgba(255,255,255,.1);--border-subtle: rgba(255,255,255,.08);--border-muted: rgba(255,255,255,.12);--border-strong: rgba(255,255,255,.18);--text-strong: rgba(226,232,240,.95);--text-secondary: rgba(226,232,240,.8);--text-tertiary: rgba(226,232,240,.6);--text-muted: rgba(226,232,240,.4);--text-kbd: rgba(226,232,240,.75);--text-faint: rgba(226,232,240,.28);--text-icon: rgba(226,232,240,.5);--text-tab-inactive: rgba(226,232,240,.45);--hover-bg: rgba(255,255,255,.07);--hover-bg-subtle: rgba(255,255,255,.06);--kbd-bg: rgba(255,255,255,.08);--accent: #6366f1;--accent-light: #a5b4fc;--accent-border: rgba(99,102,241,.55);--accent-border-strong: rgba(99,102,241,.6);--accent-bg: rgba(99,102,241,.18);--accent-bg-subtle: rgba(99,102,241,.15);--accent-text: #a5b4fc;--accent-highlight-border: rgba(99,102,241,.35);--canvas-grid: rgba(255,255,255,.04);--canvas-grid-accent: rgba(255,255,255,.09);--canvas-box-stroke: rgba(148,163,184,.35);--canvas-box-fill: rgba(148,163,184,.1);--canvas-box-glow: rgba(148,163,184,.5);--canvas-box-text: rgba(148,163,184,.65);--canvas-connection: rgba(148,163,184,.6);--canvas-connection-preview: rgba(99,102,241,.7);--canvas-label-bg: rgba(15,15,25,.75);--canvas-label-text: rgba(226,232,240,.9);--canvas-label-text-secondary: rgba(226,232,240,.8);--canvas-placeholder-fill: rgba(99,102,241,.15);--canvas-placeholder-stroke: rgba(99,102,241,.4);--canvas-placeholder-dot: rgba(99,102,241,.6);--canvas-marquee-fill: rgba(99,102,241,.08);--canvas-origin: rgba(99,102,241,.5);--canvas-glow-blur: 6;--canvas-text-bg: transparent;--canvas-stroke-width: 1.5;--canvas-box-gradient: none;--canvas-box-base: transparent;--canvas-box-separator: transparent;--canvas-icon-bg: transparent;--canvas-connection-separator: transparent;--canvas-box-solid-tint-alpha: 0;--canvas-box-filled-base-alpha: 1;--canvas-box-gradient-alpha: 1;--canvas-box-color-filled-alpha: .15;--canvas-box-color-tint-alpha: 0;--canvas-box-color-gradient-alpha: 0;--shadow-lg: 0 8px 32px rgba(0,0,0,.5);--shadow-md: 0 4px 20px rgba(0,0,0,.4);--shadow-input: 0 4px 20px rgba(0,0,0,.3);--scrollbar: rgba(255,255,255,.15);--scrollbar-hover: rgba(255,255,255,.25);--color-picker-arrow: rgba(255,255,255,.65);--canvas-connect-candidate: rgba(16,185,129,.9);--danger: #f87171;--danger-bg: rgba(248,113,113,.1);--radius-sm: 3px;--radius-md: 6px;--radius-lg: 12px;--font-ui: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--backdrop-blur: blur(16px);--font-smoothing: antialiased;--shadow-raised: none;--shadow-inset: none;--scrollbar-width: 4px;--scrollbar-radius: 2px}:root[data-theme=light]{--bg: #f1f5f9;--text: #1e293b;--surface: rgba(255,255,255,.92);--surface-overlay: rgba(255,255,255,.98);--surface-dim: rgba(248,250,252,.94);--surface-glass: rgba(255,255,255,.88);--border: rgba(0,0,0,.1);--border-subtle: rgba(0,0,0,.08);--border-muted: rgba(0,0,0,.12);--border-strong: rgba(0,0,0,.15);--text-strong: rgba(15,23,42,.95);--text-secondary: rgba(15,23,42,.8);--text-tertiary: rgba(15,23,42,.6);--text-muted: rgba(15,23,42,.4);--text-kbd: rgba(15,23,42,.75);--text-faint: rgba(15,23,42,.35);--text-icon: rgba(15,23,42,.4);--text-tab-inactive: rgba(15,23,42,.45);--hover-bg: rgba(0,0,0,.06);--hover-bg-subtle: rgba(0,0,0,.05);--kbd-bg: rgba(0,0,0,.06);--accent: #6366f1;--accent-light: #a5b4fc;--accent-border: rgba(99,102,241,.45);--accent-border-strong: rgba(99,102,241,.5);--accent-bg: rgba(99,102,241,.1);--accent-bg-subtle: rgba(99,102,241,.15);--accent-text: #4f46e5;--accent-highlight-border: rgba(99,102,241,.35);--canvas-grid: rgba(0,0,0,.05);--canvas-grid-accent: rgba(0,0,0,.12);--canvas-box-stroke: rgba(100,116,139,.4);--canvas-box-fill: rgba(100,116,139,.08);--canvas-box-glow: rgba(100,116,139,.5);--canvas-box-text: rgba(71,85,105,.7);--canvas-connection: rgba(71,85,105,.6);--canvas-connection-preview: rgba(99,102,241,.8);--canvas-label-bg: rgba(241,245,249,.85);--canvas-label-text: rgba(30,41,59,.9);--canvas-label-text-secondary: rgba(30,41,59,.8);--canvas-placeholder-fill: rgba(99,102,241,.08);--canvas-placeholder-stroke: rgba(99,102,241,.35);--canvas-placeholder-dot: rgba(99,102,241,.5);--canvas-marquee-fill: rgba(99,102,241,.06);--canvas-origin: rgba(99,102,241,.45);--canvas-glow-blur: 6;--canvas-text-bg: transparent;--canvas-stroke-width: 1.5;--canvas-box-gradient: none;--canvas-box-base: transparent;--canvas-box-separator: transparent;--canvas-icon-bg: transparent;--canvas-connection-separator: transparent;--canvas-box-solid-tint-alpha: 0;--canvas-box-filled-base-alpha: 1;--canvas-box-gradient-alpha: 1;--canvas-box-color-filled-alpha: .15;--canvas-box-color-tint-alpha: 0;--canvas-box-color-gradient-alpha: 0;--shadow-lg: 0 8px 32px rgba(0,0,0,.12);--shadow-md: 0 4px 20px rgba(0,0,0,.08);--shadow-input: 0 4px 20px rgba(0,0,0,.1);--scrollbar: rgba(0,0,0,.15);--scrollbar-hover: rgba(0,0,0,.25);--color-picker-arrow: rgba(0,0,0,.45);--canvas-connect-candidate: rgba(5,150,105,.9);--danger: #f87171;--danger-bg: rgba(248,113,113,.1);--radius-sm: 3px;--radius-md: 6px;--radius-lg: 12px;--font-ui: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--backdrop-blur: blur(16px);--font-smoothing: antialiased;--shadow-raised: none;--shadow-inset: none;--scrollbar-width: 4px;--scrollbar-radius: 2px}:root[data-theme=nord]{--bg: #2e3440;--text: #eceff4;--surface: rgba(59,66,82,.92);--surface-overlay: rgba(59,66,82,.97);--surface-dim: rgba(46,52,64,.94);--surface-glass: rgba(46,52,64,.82);--border: rgba(216,222,233,.12);--border-subtle: rgba(216,222,233,.08);--border-muted: rgba(216,222,233,.15);--border-strong: rgba(216,222,233,.2);--text-strong: rgba(236,239,244,.95);--text-secondary: rgba(229,233,240,.8);--text-tertiary: rgba(229,233,240,.6);--text-muted: rgba(229,233,240,.4);--text-kbd: rgba(229,233,240,.75);--text-faint: rgba(229,233,240,.28);--text-icon: rgba(229,233,240,.5);--text-tab-inactive: rgba(229,233,240,.45);--hover-bg: rgba(216,222,233,.08);--hover-bg-subtle: rgba(216,222,233,.06);--kbd-bg: rgba(216,222,233,.1);--accent: #88c0d0;--accent-light: #8fbcbb;--accent-border: rgba(136,192,208,.5);--accent-border-strong: rgba(136,192,208,.6);--accent-bg: rgba(136,192,208,.18);--accent-bg-subtle: rgba(136,192,208,.12);--accent-text: #88c0d0;--accent-highlight-border: rgba(136,192,208,.35);--canvas-grid: rgba(216,222,233,.04);--canvas-grid-accent: rgba(216,222,233,.1);--canvas-box-stroke: rgba(143,188,187,.35);--canvas-box-fill: rgba(143,188,187,.08);--canvas-box-glow: rgba(136,192,208,.4);--canvas-box-text: rgba(229,233,240,.65);--canvas-connection: rgba(143,188,187,.55);--canvas-connection-preview: rgba(136,192,208,.7);--canvas-label-bg: rgba(46,52,64,.8);--canvas-label-text: rgba(229,233,240,.9);--canvas-label-text-secondary: rgba(229,233,240,.8);--canvas-placeholder-fill: rgba(136,192,208,.12);--canvas-placeholder-stroke: rgba(136,192,208,.35);--canvas-placeholder-dot: rgba(136,192,208,.5);--canvas-marquee-fill: rgba(136,192,208,.08);--canvas-origin: rgba(136,192,208,.5);--canvas-glow-blur: 6;--canvas-text-bg: transparent;--canvas-stroke-width: 1.5;--canvas-box-gradient: none;--canvas-box-base: transparent;--canvas-box-separator: transparent;--canvas-icon-bg: transparent;--canvas-connection-separator: transparent;--canvas-box-solid-tint-alpha: 0;--canvas-box-filled-base-alpha: 1;--canvas-box-gradient-alpha: 1;--canvas-box-color-filled-alpha: .15;--canvas-box-color-tint-alpha: 0;--canvas-box-color-gradient-alpha: 0;--shadow-lg: 0 8px 32px rgba(0,0,0,.45);--shadow-md: 0 4px 20px rgba(0,0,0,.35);--shadow-input: 0 4px 20px rgba(0,0,0,.3);--scrollbar: rgba(216,222,233,.15);--scrollbar-hover: rgba(216,222,233,.25);--color-picker-arrow: rgba(216,222,233,.65);--canvas-connect-candidate: rgba(163,190,140,.9);--danger: #bf616a;--danger-bg: rgba(191,97,106,.12);--radius-sm: 3px;--radius-md: 6px;--radius-lg: 12px;--font-ui: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--backdrop-blur: blur(16px);--font-smoothing: antialiased;--shadow-raised: none;--shadow-inset: none;--scrollbar-width: 4px;--scrollbar-radius: 2px}:root[data-theme=win95]{--bg: #008080;--text: #000000;--surface: #c0c0c0;--surface-overlay: #c0c0c0;--surface-dim: #c0c0c0;--surface-glass: #c0c0c0;--border: #808080;--border-subtle: #a0a0a0;--border-muted: #808080;--border-strong: #404040;--text-strong: #000000;--text-secondary: #000000;--text-tertiary: #404040;--text-muted: #808080;--text-kbd: #000000;--text-faint: #808080;--text-icon: #404040;--text-tab-inactive: #808080;--hover-bg: #b0b0b0;--hover-bg-subtle: #b8b8b8;--kbd-bg: #dfdfdf;--accent: #000080;--accent-light: #ffffff;--accent-border: #000080;--accent-border-strong: #000080;--accent-bg: #000080;--accent-bg-subtle: #c0c0d8;--accent-text: #ffffff;--accent-highlight-border: #000080;--canvas-grid: rgba(0,0,0,.08);--canvas-grid-accent: rgba(0,0,0,.2);--canvas-box-stroke: #000000;--canvas-box-fill: #ffffff;--canvas-box-glow: transparent;--canvas-box-text: #000000;--canvas-connection: #000000;--canvas-connection-preview: #000080;--canvas-label-bg: transparent;--canvas-label-text: #000000;--canvas-label-text-secondary: #000000;--canvas-placeholder-fill: #dfdfdf;--canvas-placeholder-stroke: #808080;--canvas-placeholder-dot: #404040;--canvas-marquee-fill: rgba(0,0,128,.15);--canvas-origin: #000080;--canvas-glow-blur: 0;--canvas-text-bg: #ffffff;--canvas-stroke-width: 3;--canvas-box-gradient: none;--canvas-box-base: transparent;--canvas-box-separator: transparent;--canvas-icon-bg: transparent;--canvas-connection-separator: transparent;--canvas-box-solid-tint-alpha: 0;--canvas-box-filled-base-alpha: 1;--canvas-box-gradient-alpha: 1;--canvas-box-color-filled-alpha: .15;--canvas-box-color-tint-alpha: 0;--canvas-box-color-gradient-alpha: 0;--shadow-raised: inset -1px -1px #0a0a0a, inset 1px 1px #ffffff, inset -2px -2px #808080, inset 2px 2px #dfdfdf;--shadow-inset: inset 1px 1px #0a0a0a, inset -1px -1px #ffffff, inset 2px 2px #808080, inset -2px -2px #dfdfdf;--shadow-lg: var(--shadow-raised);--shadow-md: var(--shadow-raised);--shadow-input: var(--shadow-inset);--scrollbar: #c0c0c0;--scrollbar-hover: #a0a0a0;--scrollbar-width: 16px;--scrollbar-radius: 0px;--color-picker-arrow: rgba(0,0,0,.55);--canvas-connect-candidate: #008000;--danger: #ff0000;--danger-bg: #c0c0c0;--radius-sm: 0px;--radius-md: 0px;--radius-lg: 0px;--font-ui: "MS Sans Serif", "Microsoft Sans Serif", Tahoma, Geneva, sans-serif;--backdrop-blur: none;--font-smoothing: none}:root[data-theme=aqua]{--bg: #3568a7;--text: #222222;--surface: linear-gradient(180deg, #f8f8f8 0%, #d0d0d0 100%);--surface-overlay: linear-gradient(180deg, #fbfbfb 0%, #e0e0e0 100%);--surface-dim: linear-gradient(180deg, #e2e2e2 0%, #c8c8c8 100%);--surface-glass: linear-gradient(180deg, #ededed 0%, #d6d6d6 100%);--border: #9a9a9a;--border-subtle: #b8b8b8;--border-muted: #aaaaaa;--border-strong: #888888;--text-strong: #000000;--text-secondary: rgba(0,0,0,.78);--text-tertiary: rgba(0,0,0,.52);--text-muted: rgba(0,0,0,.38);--text-kbd: rgba(0,0,0,.7);--text-faint: rgba(0,0,0,.28);--text-icon: rgba(0,0,0,.45);--text-tab-inactive: rgba(0,0,0,.42);--hover-bg: rgba(27,116,232,.1);--hover-bg-subtle: rgba(27,116,232,.06);--kbd-bg: linear-gradient(180deg, #ffffff 0%, #e8e8e8 100%);--accent: #2b85e4;--accent-light: #5eaaef;--accent-border: #1a5faa;--accent-border-strong: #15508e;--accent-bg: linear-gradient(180deg, #6ab4f7 0%, #1a6ed8 50%, #1560c0 100%);--accent-bg-subtle: rgba(27,116,232,.14);--accent-text: #ffffff;--accent-highlight-border: #1a5faa;--canvas-grid: rgba(255,255,255,.1);--canvas-grid-accent: rgba(255,255,255,.22);--canvas-box-stroke: rgba(255,255,255,.85);--canvas-box-fill: #eef2f8;--canvas-box-glow: rgba(27,116,232,.4);--canvas-box-text: rgba(255,255,255,.9);--canvas-connection: rgba(255,255,255,.65);--canvas-connection-preview: rgba(27,116,232,.8);--canvas-label-bg: rgba(255,255,255,.85);--canvas-label-text: #000000;--canvas-label-text-secondary: rgba(0,0,0,.8);--canvas-placeholder-fill: rgba(27,116,232,.15);--canvas-placeholder-stroke: rgba(27,116,232,.4);--canvas-placeholder-dot: rgba(27,116,232,.55);--canvas-marquee-fill: rgba(27,116,232,.1);--canvas-origin: rgba(255,255,255,.4);--canvas-glow-blur: 0;--canvas-text-bg: transparent;--canvas-stroke-width: 2;--canvas-box-gradient: 0 #ffffff | .45 #dce8f6 | .5 #ccdff4 | 1 #b8d0ee;--canvas-box-base: transparent;--canvas-box-separator: #ffffff;--canvas-icon-bg: rgba(255,255,255,.9);--canvas-connection-separator: #ffffff;--canvas-box-solid-tint-alpha: .18;--canvas-box-filled-base-alpha: 1;--canvas-box-gradient-alpha: 1;--canvas-box-color-filled-alpha: .55;--canvas-box-color-tint-alpha: .35;--canvas-box-color-gradient-alpha: .5;--shadow-lg: inset 0 1px 0 rgba(255,255,255,.6), 0 1px 0 rgba(255,255,255,.3), 0 6px 20px rgba(0,40,100,.3);--shadow-md: inset 0 1px 0 rgba(255,255,255,.5), 0 4px 14px rgba(0,40,100,.2);--shadow-input: inset 0 2px 4px rgba(0,0,0,.12), 0 0 0 1px #a0a0a0;--shadow-raised: inset 0 1px 0 rgba(255,255,255,.6);--shadow-inset: inset 0 2px 4px rgba(0,0,0,.12);--scrollbar: linear-gradient(90deg, #7ec0f8 0%, #3d8ee0 50%, #7ec0f8 100%);--scrollbar-hover: linear-gradient(90deg, #5eaaef 0%, #2070c8 50%, #5eaaef 100%);--color-picker-arrow: rgba(0,0,0,.45);--canvas-connect-candidate: rgba(21,128,61,.9);--danger: #e03030;--danger-bg: rgba(224,48,48,.12);--radius-sm: 5px;--radius-md: 10px;--radius-lg: 18px;--font-ui: "Lucida Grande", "Lucida Sans Unicode", "Helvetica Neue", Helvetica, sans-serif;--backdrop-blur: blur(4px);--font-smoothing: antialiased;--scrollbar-width: 14px;--scrollbar-radius: 7px}
