.lgraphcanvas{-webkit-user-select:none;user-select:none;outline:none;font-family:Tahoma,sans-serif}.lgraphcanvas *{box-sizing:border-box}.litegraph.litecontextmenu{color:#aaf;z-index:10;min-width:100px;padding:0;font-family:Tahoma,sans-serif;position:fixed;top:100px;left:100px;background-color:#2e2e2e!important;box-shadow:0 0 10px #000!important}.litegraph.litecontextmenu.dark{background-color:#000!important}.litegraph.litecontextmenu .litemenu-title img{margin-top:2px;margin-left:2px;margin-right:4px}.litegraph.litecontextmenu .litemenu-entry{margin:2px;padding:2px}.litegraph.litecontextmenu .litemenu-entry.submenu{background-color:#2e2e2e!important}.litegraph.litecontextmenu.dark .litemenu-entry.submenu{background-color:#000!important}.litegraph .litemenubar ul{margin:0;padding:0;font-family:Tahoma,sans-serif}.litegraph .litemenubar li{color:#999;-webkit-user-select:none;user-select:none;cursor:pointer;min-width:50px;padding-left:10px;padding-right:10px;font-size:14px;display:inline-block}.litegraph .litemenubar li:hover{color:#eee;background-color:#777}.litegraph .litegraph .litemenubar-panel{z-index:10;background-color:#444;border-bottom:2px solid #aaf;min-width:100px;padding:4px;position:absolute;top:5px;left:5px;box-shadow:0 0 3px #000}.litegraph .litemenu-entry,.litemenu-title{color:#aaa;-webkit-user-select:none;user-select:none;cursor:pointer;margin:2px;padding:0 0 0 2px;font-size:12px}.litegraph .litemenu-entry .icon{vertical-align:top;width:12px;height:12px;margin:2px;display:inline-block}.litegraph .litemenu-entry.checked .icon{background-color:#aaf}.litegraph .litemenu-entry .more{float:right;padding-right:5px}.litegraph .litemenu-entry.disabled{opacity:.5;cursor:default}.litegraph .litemenu-entry.separator{background-color:#0000;border-top:1px solid #333;border-bottom:1px solid #666;width:100%;height:0;margin:3px 0 2px;display:block;cursor:default!important;padding:0!important}.litegraph .litemenu-entry.has_submenu{border-right:2px solid #0ff}.litegraph .litemenu-title{color:#dde;cursor:default;background-color:#111;margin:0;padding:2px}.litegraph .litemenu-entry:hover:not(.disabled):not(.separator){color:#eee;transition:all .2s;background-color:#444!important}.litegraph .litemenu-entry .property_name{text-align:left;min-width:80px;min-height:1.2em;display:inline-block}.litegraph .litemenu-entry .property_value{text-align:right;vertical-align:middle;background-color:#00000080;min-width:80px;min-height:1.2em;padding-right:10px;display:inline-block}.litegraph.litesearchbox{background-color:#00000080;padding-top:4px;font-family:Tahoma,sans-serif;position:absolute}.litegraph.litesearchbox input,.litegraph.litesearchbox select{color:#fff;background-color:#000;border:0;min-width:60px;min-height:1.5em;margin-top:3px;margin-right:5px;padding-left:10px}.litegraph.litesearchbox .name{min-width:60px;min-height:1.5em;padding-left:10px;display:inline-block}.litegraph.litesearchbox .helper{max-height:200px;margin-top:2px;overflow:auto}.litegraph.lite-search-item{color:#fff;background-color:#00000080;padding-top:2px;font-family:Tahoma,sans-serif}.litegraph.lite-search-item.not_in_filter{color:#b99;font-style:italic}.litegraph.lite-search-item.generic_type{color:#999;font-style:italic}.litegraph.lite-search-item:hover,.litegraph.lite-search-item.selected{cursor:pointer;color:#000;background-color:#fff}.litegraph .dialog{background-color:#2a2a2a;border-radius:6px;min-width:400px;min-height:200px;margin-top:-150px;margin-left:-200px;position:absolute;top:50%;left:50%;box-shadow:0 0 4px #111}.litegraph .dialog.settings{max-width:50%;height:calc(100% - 20px);margin:auto;top:10px;left:10px}.litegraph .dialog.centered{min-width:600px;height:calc(100% - 100px);min-height:300px;margin:auto;position:absolute;top:50px;left:50%;transform:translate(-50%)}.litegraph .dialog .close{float:right;cursor:pointer;margin:4px 10px 4px 4px;font-size:1.4em}.litegraph .dialog .close:hover{color:#fff}.litegraph .dialog .dialog-header{color:#aaa;border-bottom:1px solid #161616;height:40px}.litegraph .dialog .dialog-footer{border-top:1px solid #1a1a1a;height:50px;padding:10px}.litegraph .dialog .dialog-header .dialog-title{margin:4px;padding:4px 10px;font:20px Arial;display:inline-block}.litegraph .dialog .dialog-content,.litegraph .dialog .dialog-alt-content{color:#aaa;width:100%;height:calc(100% - 90px);min-height:100px;display:inline-block;overflow:auto}.litegraph .dialog .dialog-content h3{margin:10px}.litegraph .dialog .dialog-content .connections{flex-direction:row}.litegraph .dialog .dialog-content .connections .connections_side{background-color:#000;width:calc(50% - 5px);min-height:100px;display:flex}.litegraph .dialog .node_type{margin:10px;font-size:1.2em;display:block}.litegraph .dialog .node_desc{opacity:.5;margin:10px;display:block}.litegraph .dialog .separator{border-top:1px solid #000;border-bottom:1px solid #333;width:calc(100% - 4px);height:1px;margin:10px 2px;padding:0;display:block}.litegraph .dialog .property{margin-bottom:2px;padding:4px}.litegraph .dialog .property:hover{background:#545454}.litegraph .dialog .property_name{color:#737373;text-align:left;vertical-align:top;width:160px;margin-right:6px;padding-left:4px;display:inline-block;overflow:hidden}.litegraph .dialog .property:hover .property_name{color:#fff}.litegraph .dialog .property_value{text-align:right;color:#aaa;cursor:pointer;background-color:#1a1a1a;border-radius:3px;min-width:200px;max-width:calc(100% - 162px);min-height:20px;max-height:300px;padding:4px 12px 4px 4px;display:inline-block;overflow:hidden}.litegraph .dialog .property_value:hover{color:#fff}.litegraph .dialog .property.boolean .property_value{color:#a88;padding-right:30px}.litegraph .dialog .property.boolean.bool-on .property_name,.litegraph .dialog .property.boolean.bool-on .property_value{color:#8a8}.litegraph .dialog .btn{color:#8e8e8e;background-color:#060606;border:0;border-radius:4px;margin-left:0;padding:4px 20px}.litegraph .dialog .btn:hover{color:#fff;background-color:#111}.litegraph .dialog .btn.delete:hover{color:#000;background-color:#f33}.litegraph .subgraph_property{padding:4px}.litegraph .subgraph_property:hover{background-color:#333}.litegraph .subgraph_property.extra{margin-top:8px}.litegraph .subgraph_property span.name{padding-left:4px;font-size:1.3em}.litegraph .subgraph_property span.type{opacity:.5;margin-right:20px;padding-left:4px}.litegraph .subgraph_property span.label{width:60px;padding:0 10px;display:inline-block}.litegraph .subgraph_property input{color:#999;background-color:#1a1a1a;border:0;border-radius:4px;width:140px;margin-right:10px;padding:4px 4px 4px 10px}.litegraph .subgraph_property button{color:#aaa;cursor:pointer;background-color:#1c1c1c;border:0;border-radius:2px;padding:4px 10px}.litegraph .subgraph_property.extra{color:#ccc}.litegraph .subgraph_property.extra input{background-color:#111}.litegraph .bullet_icon{background-color:#666;border-radius:10px;width:12px;height:12px;margin-top:2px;margin-left:10px;margin-right:4px;transition:background-color .1s;display:inline-block}.litegraph .bullet_icon:hover{cursor:pointer;background-color:#698}.graphcontextmenu{min-width:100px;padding:4px}.graphcontextmenu-title{color:#dde;cursor:default;background-color:#222;margin:0;padding:2px}.graphmenu-entry{box-sizing:border-box;-webkit-user-select:none;user-select:none;margin:2px;padding-left:20px;transition:all .3s linear}.graphmenu-entry.event,.litemenu-entry.event{border-left:8px solid orange;padding-left:12px}.graphmenu-entry.disabled{opacity:.3}.graphmenu-entry.submenu{border-right:2px solid #eee}.graphmenu-entry:hover{background-color:#555}.graphmenu-entry.separator{-moz-width:calc(100% - 20px);-webkit-width:calc(100% - 20px);background-color:#111;border-bottom:1px solid #666;width:calc(100% - 20px);height:1px}.graphmenu-entry .property_name{text-align:left;min-width:80px;min-height:1.2em;display:inline-block}.graphmenu-entry .property_value,.litemenu-entry .property_value{text-align:right;vertical-align:middle;background-color:#00000080;min-width:80px;min-height:1.2em;padding-right:10px;display:inline-block}.graphdialog{z-index:10;background-color:#333;min-height:2em;font-size:1.2em;position:absolute;top:10px;left:10px;box-shadow:0 0 10px #000!important}.graphdialog.rounded{border-radius:12px;padding-right:2px}.graphdialog .name{min-width:60px;min-height:1.5em;padding-left:10px;display:inline-block}.graphdialog input,.graphdialog textarea,.graphdialog select{color:#fff;background-color:#000;border:0;outline:none;min-width:60px;min-height:1.5em;margin:3px;padding-left:10px}.graphdialog textarea{min-height:150px}.graphdialog button{vertical-align:top;background-color:#999;border:0;margin-top:3px}.graphdialog button.rounded,.graphdialog input.rounded{border-radius:0 12px 12px 0}.graphdialog .helper{max-height:200px;overflow:auto}.graphdialog .help-item{padding-left:10px}.graphdialog .help-item:hover,.graphdialog .help-item.selected{cursor:pointer;color:#000;background-color:#fff}.litegraph .dialog{min-height:0}.litegraph .dialog .dialog-content{display:block}.litegraph .dialog .dialog-content .subgraph_property{padding:5px}.litegraph .dialog .dialog-footer{margin:0}.litegraph .dialog .dialog-footer .subgraph_property{align-items:center;margin-top:0;padding:5px;display:flex}.litegraph .dialog .dialog-footer .subgraph_property .name{flex:1}.litegraph .graphdialog{border-radius:20px;align-items:center;padding:4px 10px;display:flex;position:fixed}.litegraph .graphdialog .name{vertical-align:middle;min-height:0;padding:0;font-size:16px}.litegraph .graphdialog .value{min-height:0;margin:0 10px;padding:2px 5px;font-size:16px}.litegraph .graphdialog input[type=checkbox]{width:16px;height:16px}.litegraph .graphdialog button{cursor:pointer;border-radius:20px;padding:4px 18px}:root{--topbar-height:52px;--inspector-width:288px;--radius-xs:2px;--radius-sm:3px;--radius-md:5px;--font-mono:"JetBrains Mono", ui-monospace, "Cascadia Code", Consolas, monospace;--font-sans:"IBM Plex Sans", ui-sans-serif, system-ui, sans-serif;--fs-xs:10.5px;--fs-sm:11.5px;--fs-base:13px;--fs-md:14px;--fs-lg:16px;--tracking-tight:-.01em;--tracking-wide:.08em;--tracking-xwide:.14em;--brand:#facc15;--brand-dim:#eab308}:root[data-theme=dark]{--bg-app:#0a0d11;--bg-panel:#11151b;--bg-canvas:#0d1117;--bg-elevated:#181d25;--bg-overlay:#0a0d11db;--border:#1f2630;--border-strong:#2d3641;--border-input:#242b35;--text:#e9edf3;--text-strong:#f7f9fc;--text-muted:#7a8597;--text-faint:#4a5263;--accent:#facc15;--accent-hover:#fde047;--accent-soft:#facc151f;--accent-text:#0a0d11;--selection:#06b6d4;--selection-soft:#06b6d42e;--success:#34d399;--warn:#fbbf24;--error:#f87171;--error-soft:#f8717124;--grid-dot:#ffffff0e;--grid-bg:#0d1117;--node-value:#5e8a72;--node-multiply:#5d6f92;--node-default:#5d8585;--node-comment-bg:#2a261a;--node-comment-border:#a88a2a;--port-out:#82a795;--port-in:#8590a3;--port-any:#a08fc4;--link-default:#facc15;--link-error:#f87171;--link-success:#34d399;--canvas-badge-text:#facc15d9;--canvas-comment-title:#facc15f2;--canvas-comment-body:#e9edf3eb;--shadow-sm:0 1px 2px #0006;--shadow-md:0 4px 12px #00000080;--shadow-lg:0 12px 36px #0009;--ring:0 0 0 1px var(--bg-app), 0 0 0 3px var(--accent);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-theme=light]{--bg-app:#f7f8f9;--bg-panel:#fff;--bg-canvas:#fafbfc;--bg-elevated:#fff;--bg-overlay:#ffffffeb;--border:#e6e8ec;--border-strong:#cdd1d8;--border-input:#d8dce2;--text:#15181d;--text-strong:#0a0c0f;--text-muted:#5e6470;--text-faint:#9aa0aa;--accent:#8a6300;--accent-hover:#6e4f00;--accent-soft:#8a63001a;--accent-text:#fff;--selection:#0891b2;--selection-soft:#0891b21a;--success:#16a34a;--warn:#a16207;--error:#dc2626;--error-soft:#dc26261a;--grid-dot:#0f172a0f;--grid-bg:#fafbfc;--node-value:#4d7762;--node-multiply:#4e5e80;--node-default:#4d7070;--node-comment-bg:#fdf8e6;--node-comment-border:#a17400;--port-out:#4d7762;--port-in:#5e6470;--port-any:#6f4ea8;--link-default:#8a6300;--link-error:#dc2626;--link-success:#16a34a;--canvas-badge-text:#8a6300;--canvas-comment-title:#6e4f00;--canvas-comment-body:#15181d;--shadow-sm:0 1px 2px #0f172a0f;--shadow-md:0 4px 12px #0f172a14;--shadow-lg:0 12px 36px #0f172a1f;--ring:0 0 0 1px var(--bg-app), 0 0 0 3px var(--accent);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*,:before,:after{box-sizing:border-box}html,body{height:100%;margin:0}body{font-family:var(--font-sans);font-size:var(--fs-base);color:var(--text);background:var(--bg-app);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;overflow:hidden}#app{grid-template-columns:var(--inspector-width) 1fr;grid-template-rows:var(--topbar-height) 1fr;height:100vh;display:grid}.topbar{background:var(--bg-panel);border-bottom:1px solid var(--border);grid-column:1/-1;align-items:stretch;padding:0 14px 0 0;display:flex;position:relative}.topbar:after{content:"";background:linear-gradient(90deg, transparent 0%, var(--accent) 8%, var(--accent) 12%, transparent 14%);opacity:.6;pointer-events:none;height:1px;position:absolute;bottom:-1px;left:0;right:0}.brand{border-right:1px solid var(--border);font-family:var(--font-mono);font-size:var(--fs-sm);letter-spacing:var(--tracking-xwide);text-transform:uppercase;color:var(--text-strong);-webkit-user-select:none;user-select:none;align-items:center;gap:10px;padding:0 18px 0 16px;display:flex}.brand__mark{width:14px;height:14px;position:relative}.brand__mark:before,.brand__mark:after{content:"";border:1.5px solid var(--accent);position:absolute;inset:0}.brand__mark:before{transform:rotate(45deg)}.brand__mark:after{background:var(--accent);border:0;transform:scale(.45)}.brand__name{font-weight:600}.brand__name span{color:var(--accent)}.topbar__group{border-right:1px solid var(--border);align-items:center;gap:2px;padding:0 10px;display:flex}.topbar__group:last-of-type{border-right:0}.topbar__spacer{flex:1}.topbar__meta{align-items:center;gap:12px;padding-left:10px;display:flex}.selected-count{font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--text-muted);white-space:nowrap}.selected-count strong{color:var(--text-strong);font-weight:600}.btn{appearance:none;height:30px;color:var(--text-muted);font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:var(--tracking-wide);text-transform:uppercase;border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:1px solid #0000;align-items:center;gap:6px;padding:0 10px;font-weight:500;transition:color .12s,background-color .12s,border-color .12s;display:inline-flex}.btn:hover{color:var(--text-strong);background:var(--bg-elevated)}.btn:active{background:var(--accent-soft);color:var(--text-strong)}.btn:focus-visible{box-shadow:var(--ring);outline:none}.btn--primary{background:var(--accent);color:var(--accent-text);border-color:var(--accent)}.btn--primary:hover{background:var(--accent-hover);color:var(--accent-text);border-color:var(--accent-hover)}.btn--icon{border:1px solid var(--border);justify-content:center;width:30px;height:30px;padding:0}.btn--icon:hover{border-color:var(--border-strong)}.icon-sun,.icon-moon{width:14px;height:14px;display:block}:root[data-theme=dark] .icon-sun{display:block}:root[data-theme=dark] .icon-moon,:root[data-theme=light] .icon-sun{display:none}:root[data-theme=light] .icon-moon{display:block}.canvas-wrap{background:var(--bg-canvas);position:relative;overflow:hidden}#graph-canvas{width:100%;height:100%;display:block}.canvas-wrap:before,.canvas-wrap:after{content:"";border:1px solid var(--text-faint);opacity:.35;pointer-events:none;z-index:2;width:14px;height:14px;position:absolute}.canvas-wrap:before{border-bottom:0;border-right:0;top:10px;left:10px}.canvas-wrap:after{border-top:0;border-left:0;bottom:10px;right:10px}.canvas-status{background:var(--bg-overlay);border:1px solid var(--border);border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--text-muted);z-index:3;pointer-events:none;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);align-items:center;gap:8px;padding:6px 10px;display:flex;position:absolute;bottom:14px;left:14px}.canvas-status .dot{background:var(--success);width:7px;height:7px;box-shadow:0 0 6px var(--success);border-radius:50%}.toast-host{z-index:100;pointer-events:none;flex-direction:column;gap:8px;display:flex;position:fixed;bottom:20px;left:50%;transform:translate(-50%)}.toast{pointer-events:auto;background:var(--bg-elevated);border:1px solid var(--border);color:var(--text);border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:var(--fs-sm);letter-spacing:var(--tracking-wide);box-shadow:var(--shadow-lg);align-items:center;gap:10px;padding:10px 16px;animation:.22s cubic-bezier(.22,1,.36,1) toast-in;display:flex}.toast:before{content:"";background:var(--text-muted);border-radius:50%;flex-shrink:0;width:6px;height:6px}.toast--success:before{background:var(--success);box-shadow:0 0 6px var(--success)}.toast--warn:before{background:var(--warn);box-shadow:0 0 6px var(--warn)}.toast--error:before{background:var(--error);box-shadow:0 0 6px var(--error)}.toast--info:before{background:var(--accent);box-shadow:0 0 6px var(--accent)}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.mobile-warning{background:var(--bg-app);color:var(--text);text-align:center;font-family:var(--font-mono);font-size:var(--fs-md);letter-spacing:var(--tracking-wide);text-transform:uppercase;z-index:1000;justify-content:center;align-items:center;padding:32px;display:none;position:fixed;inset:0}@media (width<=768px){.mobile-warning{display:flex}#app{display:none}}.inspector{background:var(--bg-panel);border-right:1px solid var(--border);font-family:var(--font-sans);padding:0;position:relative;overflow:hidden auto}.inspector::-webkit-scrollbar{width:8px}.inspector::-webkit-scrollbar-track{background:0 0}.inspector::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.inspector::-webkit-scrollbar-thumb:hover{background:var(--border-strong)}.inspector__title{font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:var(--tracking-xwide);text-transform:uppercase;color:var(--text-muted);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;margin:0;padding:14px 16px 12px;font-weight:600;display:flex}.inspector__title:after{content:"";border:1.5px solid var(--accent);opacity:.7;width:8px;height:8px;display:block;transform:rotate(45deg)}.inspector__body{padding:14px 16px 20px}.inspector__empty{color:var(--text-faint);font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:var(--tracking-wide);text-transform:uppercase;text-align:center;border:1px dashed var(--border);border-radius:var(--radius-sm);margin:0;padding:24px 0}.inspector__section{margin-bottom:16px}.inspector__section+.inspector__section{border-top:1px dashed var(--border);margin-top:16px;padding-top:14px}.inspector__section-title{font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:var(--tracking-xwide);text-transform:uppercase;color:var(--text-muted);align-items:center;gap:8px;margin:0 0 10px;font-weight:500;display:flex}.inspector__section-title:after{content:"";background:var(--border);flex:1;height:1px}.inspector__type{font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--text-strong);background:var(--bg-elevated);border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:var(--radius-xs);align-items:center;gap:6px;margin-bottom:12px;padding:4px 10px;display:inline-flex}.inspector__field{flex-direction:column;gap:4px;margin-bottom:10px;display:flex}.inspector__field--row{grid-template-columns:1fr 1fr;gap:8px;display:grid}.inspector__field label{font-family:var(--font-mono);letter-spacing:var(--tracking-xwide);text-transform:uppercase;color:var(--text-muted);font-size:9.5px;font-weight:500}.inspector__field input,.inspector__field textarea,.inspector__field select{font-family:var(--font-mono);font-size:var(--fs-base);border:1px solid var(--border-input);background:var(--bg-app);color:var(--text-strong);border-radius:var(--radius-xs);padding:7px 9px;transition:border-color .12s,background .12s}.inspector__field input[type=text]{font-family:var(--font-sans)}.inspector__field input:hover,.inspector__field textarea:hover{border-color:var(--border-strong)}.inspector__field input:focus,.inspector__field textarea:focus,.inspector__field select:focus{border-color:var(--accent);background:var(--bg-elevated);box-shadow:0 0 0 1px var(--accent-soft);outline:none}.inspector__field textarea{resize:vertical;min-height:72px;line-height:1.5}.inspector__field input[type=number]{text-align:right;font-variant-numeric:tabular-nums}.inspector__field input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.inspector__field input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.inspector__field input[type=number]{-moz-appearance:textfield}.inspector__hint{font-family:var(--font-mono);color:var(--text-faint);letter-spacing:.04em;margin-top:4px;font-size:10px}
