:root{--g-selection-background:#4d53e8;--g-editor-background:#f2f3f5;--g-playground-select:var(--g-selection-background);--g-playground-hover:var(--g-selection-background);--g-playground-line:var(--g-selection-background);--g-playground-blur:#999;--g-playground-selectBox-outline:var(--g-selection-background);--g-playground-selectBox-background:#8d90e71a;--g-playground-select-hover-background:#4d53e81a;--g-playground-select-control-size:12px}.gedit-playground{z-index:10;-webkit-user-select:none;user-select:none;box-sizing:border-box;background-color:var(--g-editor-background);outline:none;width:100%;height:100%;position:absolute;top:0;left:0;overflow:hidden}.gedit-playground-scroll-right{z-index:10;width:7px;height:100vh;position:absolute;right:2px}.gedit-playground-scroll-bottom{z-index:10;width:100vw;height:7px;position:absolute;bottom:2px}.gedit-playground-scroll-right-block{opacity:.3;border-radius:3.5px;position:absolute}.gedit-playground-scroll-right-block:hover{opacity:.6}.gedit-playground-scroll-bottom-block{opacity:.3;border-radius:3.5px;position:absolute}.gedit-playground-scroll-bottom-block:hover{opacity:.6}.gedit-playground-scroll-hidden{opacity:0}.gedit-playground *{box-sizing:border-box}.gedit-playground-loading{color:#fff;z-index:100;text-align:center;opacity:.8;flex-direction:column;justify-content:center;align-items:center;transition:opacity .8s;display:flex;position:absolute;top:50%;left:50%}.gedit-hidden{display:none}.gedit-playground-pipeline{width:100%;height:100%;position:absolute;top:0;left:0;overflow:visible}.gedit-playground-pipeline:before{content:"";width:1px;height:100%;position:absolute;top:0;left:0}.gedit-playground-layer{position:absolute;overflow:visible}.gedit-selector-box{z-index:33;outline:1px solid var(--g-playground-selectBox-outline);background-color:var(--g-playground-selectBox-background);width:0;height:0;position:absolute;top:0;left:0}.gedit-selector-box-block{z-index:9999;background-color:#0000;width:0;height:0;display:none;position:absolute;top:0;left:0}.gedit-selector-bounds-background{outline:1px solid var(--g-playground-selectBox-outline);background-color:#f0f4ff;width:0;height:0;position:absolute;top:0;left:0}.gedit-selector-bounds-foreground{z-index:33;background:#fff0;width:0;height:0;position:absolute;top:0;left:0}.gedit-flow-activity-node{position:absolute}.gedit-grid-svg{width:0;height:0;display:block;position:absolute;top:20px;left:20px}:root{--lightningcss-light: ;--lightningcss-dark:initial;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--g-editor-background:#15171c;--g-selection-background:#9cabfb;--g-workflow-line-color-default:#8f9dcb;--g-workflow-line-color-selected:#d1d8ff;--g-workflow-line-color-hover:#c4ceff;--g-workflow-line-color-drawing:#c4ceff;--border:#30333e;--muted:#9399aa;--text:#e7e9ef;--accent:#b4bfff}*{box-sizing:border-box}html,body,#root{width:100%;height:100%;color:var(--text);background:#15171c;margin:0;font-family:Inter,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;font-size:14px;overflow:hidden}button,input,textarea,select{font:inherit}button,a,input,textarea,select{outline-offset:4px}button{cursor:pointer;border:1px solid var(--border);color:var(--text);background:#262933;border-radius:7px;padding:8px 12px;transition:background .15s,border-color .15s}button:disabled{opacity:.45;cursor:not-allowed}button:hover:not(:disabled){background:#343846;border-color:#5d6687}a{color:inherit;text-decoration:none}button:focus-visible{outline:2px solid var(--accent)}a:focus-visible{outline:2px solid var(--accent)}.demo-free-container,.studio{flex-direction:column;display:flex;position:absolute;top:0;bottom:0;left:0;right:0}.demo-free-layout,.studio-main{flex:1;min-height:0;display:flex}.demo-free-editor,.canvas-stage{flex:1;min-width:0;height:100%;position:relative}.studio-header{border-bottom:1px solid var(--border);z-index:120;background:#1c1e25;flex-shrink:0;align-items:center;gap:22px;height:68px;padding:0 22px;display:flex}.studio-brand{white-space:nowrap;align-items:center;gap:11px;font-size:16px;font-weight:650;display:flex}.brand-mark{color:#191c2a;background:#b4bfff;border-radius:8px;place-items:center;width:31px;height:31px;font-size:22px;display:grid}.studio-title{border-left:1px solid #3c3e49;align-items:center;gap:12px;padding-left:22px;display:flex}.studio-title small{color:var(--muted);font-size:12px}.header-actions{align-items:center;gap:8px;margin-left:auto;display:flex}.header-actions .run-button{color:#1e2341;background:#b4bfff;border-color:#b4bfff;padding:10px 19px;font-weight:650}.header-actions .run-button:hover{background:#cbd2ff}.back-link{color:var(--muted);font-size:13px}.studio-sidebar{border-right:1px solid var(--border);z-index:30;background:#1c1e25;flex-direction:column;flex-shrink:0;width:222px;padding:22px 16px 16px;display:flex}.sidebar-heading{justify-content:space-between;align-items:center;margin-bottom:17px;font-weight:600;display:flex}.sidebar-heading small{color:var(--muted);font-size:12px;font-weight:400}.node-search{border:1px solid var(--border);width:100%;color:var(--text);background:#13151b;border-radius:7px;margin-bottom:8px;padding:10px 11px}.node-catalog{overflow-y:auto}.catalog-group{color:#858b9d;letter-spacing:.08em;margin:22px 0 10px;font-size:12px}.node-card{text-align:left;cursor:grab;background:#252831;border-color:#323541;border-radius:8px;align-items:center;gap:11px;width:100%;margin-bottom:7px;padding:12px 10px;display:flex}.node-card .catalog-icon{background:color-mix(in srgb,var(--node-color)12%,transparent);width:32px;height:34px;color:var(--node-color);border-radius:6px;place-items:center;font-size:21px;display:grid}.node-card strong{font-size:14px;font-weight:550;display:block}.node-card small{color:#949bad;margin-top:4px;font-size:12px;display:block}.node-card .card-plus{color:#737b91;margin-left:auto;font-size:18px}.sidebar-help{border-top:1px solid var(--border);color:#969cad;margin-top:auto;padding-top:24px;font-size:12px;line-height:1.9}.sidebar-help p{margin:0 0 5px}.sidebar-help kbd{font:inherit;color:#d1d5e1}.sidebar-bottom{color:#6f7687;justify-content:space-between;margin-top:18px;font-size:12px;display:flex}.canvas-stage>.gedit-playground{background:#15171c}.workflow-node{background:#202229;border:1px solid #414550;border-radius:10px;width:310px;overflow:visible;box-shadow:0 7px 25px #0003}.workflow-node.selected,.workflow-node.activated{border-color:#b4bfff;box-shadow:0 0 0 1px #b4bfff,0 8px 30px #0004}.workflow-node.processing{border-color:#b4bfff;box-shadow:0 0 0 2px #8f9fff45}.workflow-node.error{border-color:#dc8288}.node-header{background:color-mix(in srgb,var(--node-color)10%,#23252e);border-bottom:1px solid #414550;border-top:3px solid var(--node-color);cursor:grab;border-radius:9px 9px 0 0;align-items:center;gap:10px;height:44px;padding:0 13px;display:flex}.node-header strong{font-size:14px;font-weight:600}.node-icon{color:var(--node-color);font-size:18px}.node-id{color:#828a9e;margin-left:auto;font-family:monospace;font-size:12px}.node-header button{color:#9ca2b4;background:0 0;border:0;padding:0 3px;font-size:20px;line-height:24px}.node-ports{position:relative}.port-label{font-size:12px;line-height:24px;position:absolute}.input-label{left:13px}.output-label{top:6px;right:13px}.node-content{flex-direction:column;gap:11px;padding:0 14px 14px;display:flex}.node-content fieldset{border:0;flex-direction:column;gap:12px;min-width:0;margin:0;padding:0;display:flex}.field-label{color:#aeb4c4;flex-direction:column;gap:7px;font-size:14px;display:flex}.node-content input,.node-content textarea,.node-content select{color:#e7e9ef;-webkit-user-select:text;user-select:text;background:#15171d;border:1px solid #3c404d;border-radius:6px;width:100%;padding:8px 9px;font-size:14px;line-height:1.55}.node-content textarea{resize:vertical;min-height:80px;max-height:350px}.node-content input:focus,.node-content textarea:focus,.node-content select:focus{border-color:#a3b1f4;outline:1px solid #a3b1f4}.field-row{gap:10px;display:flex}.field-row>*{flex:1;min-width:0}.field-hint{color:#868e9f;font-size:12px;line-height:1.6}.node-content details{color:#959daf;font-size:12px}.node-content summary{cursor:pointer}.node-content details input{margin-top:8px}.node-status{color:#8c94a7;border-top:1px solid #343743;align-items:center;gap:7px;height:32px;padding:0 14px;font-size:12px;display:flex}.status-indicator{background:currentColor;border-radius:50%;width:5px;height:5px}.node-status.completed{color:#81c9b2}.node-status.processing,.node-status.uploading{color:#b4bfff}.node-status.error,.node-error{color:#f0a1a5}.node-error{overflow-wrap:anywhere;background:#4e2a303b;border:1px solid #75414b;border-radius:6px;padding:9px;font-size:12px;line-height:1.7}.result-image{background:#15171b;border-radius:7px;display:block;overflow:hidden}.result-image img,.node-content video{object-fit:contain;border-radius:7px;width:100%;max-height:300px;display:block}.result-link{color:#bac6ff;font-size:12px}.preview-empty{color:#848da2;background:#191b21;border:1px dashed #404554;border-radius:7px;flex-direction:column;justify-content:center;align-items:center;gap:12px;height:235px;display:flex}.preview-empty>span{color:#536078;font-size:37px}.preview-empty strong{color:#a1aabb;font-size:14px;font-weight:400}.preview-empty small{font-size:12px}.upload-zone{background:#181e21;border:1px dashed #53605f;border-radius:7px;flex-direction:column;justify-content:center;align-items:center;gap:11px;width:100%;height:205px;padding:0;display:flex;position:relative;overflow:hidden}.upload-zone strong{font-size:14px;font-weight:500}.upload-zone small{color:#8d9a9f;font-size:12px}.upload-zone .upload-symbol{color:#79c8b5;font-size:29px}.upload-zone img{object-fit:contain;width:100%;height:100%}.replace-image{color:#c6ded7;background:#101619d9;width:100%;padding:8px;font-size:12px;position:absolute;bottom:0}.drag-over{background:#263e39!important;border-color:#9be2c6!important}.file-caption{color:#91a89f;white-space:nowrap;text-overflow:ellipsis;margin-top:9px;font-size:12px;overflow:hidden}.image-input>.field-label{margin-top:12px}.canvas-tools{z-index:110;background:#21242def;border:1px solid #3b404e;border-radius:9px;align-items:center;gap:3px;padding:5px;display:flex;position:absolute;bottom:24px;left:22px;box-shadow:0 6px 20px #0003}.canvas-tools button{background:0 0;border:0;padding:8px 11px}.canvas-tools .zoom-value{text-align:center;color:#b6bfd3;min-width:52px;font:12px monospace}.tool-divider{background:#424755;width:1px;height:18px;margin:0 4px}.canvas-minimap{z-index:100;border:1px solid #393e4c;border-radius:9px;position:absolute;bottom:24px;right:22px;overflow:hidden}.canvas-footnote{color:#747d91;z-index:100;pointer-events:none;font-size:12px;position:absolute;top:19px;left:24px}.canvas-toast{color:#e1e8fa;z-index:300;background:#303646;border:1px solid #697898;border-radius:8px;max-width:90%;padding:12px 18px;font-size:14px;position:absolute;bottom:88px;left:50%;transform:translate(-50%);box-shadow:0 7px 20px #0005}.log-panel{z-index:150;background:#20242df5;border:1px solid #3c4456;border-radius:9px;width:335px;max-height:300px;position:absolute;top:24px;right:22px;overflow:hidden;box-shadow:0 8px 30px #0005}.log-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:9px 13px;display:flex}.log-header button{padding:3px 7px}.log-entries{color:#bbc3d3;white-space:pre-wrap;overflow-wrap:anywhere;max-height:235px;padding:12px 14px;font-size:12px;line-height:1.9;overflow:auto}.context-menu{z-index:400;background:#252933;border:1px solid #4c5263;border-radius:9px;width:215px;padding:8px;position:fixed;box-shadow:0 10px 35px #0006}.context-menu button{text-align:left;background:0 0;border:0;width:100%;display:block}.context-menu small{color:var(--muted);padding:7px 12px;display:block}.empty-search{color:var(--muted);padding:24px 3px;font-size:13px}.edge-text{--g-workflow-line-color-default:#b397d7}.edge-image{--g-workflow-line-color-default:#6ebca5}.edge-video{--g-workflow-line-color-default:#d4ac77}.workflow-port{opacity:1!important}.node-content [hidden]{display:none}.file-menu{position:relative}.file-menu summary{cursor:pointer;border:1px solid var(--border);border-radius:7px;padding:8px 12px;list-style:none}.file-menu[open]>.file-menu-items{background:#252933;border:1px solid #4c5263;border-radius:8px;width:185px;padding:7px;position:absolute;top:42px;right:0}.file-menu-items button{text-align:left;background:0 0;border:0;width:100%;display:block}.loading-studio{height:100%;color:var(--muted);place-items:center;display:grid}@media (max-width:1100px){.studio-title small,.back-link{display:none}.studio-header{gap:14px;padding:0 15px}.studio-sidebar{width:200px;padding:18px 12px}.studio-title{padding-left:14px}.header-actions{gap:5px}.header-actions button{padding:8px 10px}}@media (max-width:760px){.studio-header{flex-wrap:wrap;gap:10px;height:auto;min-height:60px;padding:12px}.studio-title{border:0;padding:0;font-size:12px}.header-actions{flex-wrap:wrap;width:100%;margin-left:0}.studio-sidebar{width:66px;padding:14px 8px}.node-search,.sidebar-heading,.catalog-group,.node-card strong,.node-card small,.card-plus,.sidebar-help,.sidebar-bottom{display:none}.node-card{justify-content:center;padding:7px}.node-card .catalog-icon{flex-shrink:0}.canvas-minimap{display:none}.canvas-tools{flex-wrap:wrap;max-width:calc(100% - 20px);bottom:12px;left:10px}.canvas-tools button{padding:7px 8px}.canvas-footnote{left:12px}.log-panel{width:min(335px,100% - 24px);right:12px}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.workflow-port[data-port-entity-id$=_flow]:not(.linked){display:none}.workflow-port[data-port-entity-id$=_text]{--g-workflow-port-color-primary:#c5a6f7!important;--g-workflow-port-color-secondary:#c5a6f7!important}.workflow-port[data-port-entity-id$=_image]{--g-workflow-port-color-primary:#79c8b5!important;--g-workflow-port-color-secondary:#79c8b5!important}.workflow-port[data-port-entity-id$=_video]{--g-workflow-port-color-primary:#e5bd83!important;--g-workflow-port-color-secondary:#e5bd83!important}.workflow-port .bg{transform:scale(.55)!important}.workflow-port.hovered .bg{transform:scale(.85)!important}.node-run-button{color:#dce2ff;background:#343e62;border-color:#586894;width:100%;padding:9px 12px;font-weight:600}.node-run-button:hover:not(:disabled){background:#45557f}.result-item{flex-direction:column;gap:6px;display:flex}.select-output{padding:6px 10px;font-size:12px}.select-output.is-output{color:#a3e1d0;background:#253b35;border-color:#79c8b5}.output-hint{color:#9fb7ae}.rh-import{border-top:1px solid #363a45;flex-direction:column;gap:9px;margin:12px 16px;padding-top:16px;display:flex}.rh-import input,.rh-import button{width:100%;min-width:0}.rh-import a,.rh-import small{color:#9baacd;overflow-wrap:anywhere;font-size:11px}.rh-field{margin-top:14px;position:relative}.rh-field .field-label>span{position:relative}.rh-field small{color:#939baa;font-weight:400}.rh-port{width:1px;height:1px;position:absolute;top:8px;left:-18px}.rh-output-port{width:1px;height:1px;position:absolute;top:8px;right:-14px}.rh-upload{color:#acbad4;margin-top:7px;font-size:11px;display:block}.rh-upload input{width:100%;margin-top:4px;font-size:10px}.rh-text-result{white-space:pre-wrap;overflow-wrap:anywhere;max-height:240px;overflow:auto}.node-runninghub audio{width:100%}.studio-sidebar{overflow-y:auto}.rh-import{margin:12px 0}.history-panel{z-index:45;background:#202229;border:1px solid #484f63;border-radius:12px;flex-direction:column;gap:12px;width:min(360px,100% - 32px);padding:16px;display:flex;position:absolute;top:16px;bottom:65px;right:16px;box-shadow:0 12px 35px #0007}.history-panel header{justify-content:space-between;align-items:center;display:flex}.history-panel small{color:#a0a9ba;margin-top:4px;font-size:11px;display:block}.history-filters{gap:8px;display:flex}.history-filters input{width:100%;min-width:0}.history-list{flex-direction:column;gap:14px;min-height:0;display:flex;overflow:auto}.history-card{border:1px solid #3e4350;border-radius:8px;flex-direction:column;gap:10px;padding:12px;display:flex}.history-card img,.history-card video,.history-card audio{object-fit:contain;border-radius:5px;width:100%;max-height:220px}.history-card button{width:100%;margin-top:5px}.history-card p,.history-card pre{white-space:pre-wrap;overflow-wrap:anywhere;max-height:180px;font-size:12px;overflow:auto}.node-preview audio,.node-result audio{width:100%}