@font-face{font-family:Bianzhidai;src:url(/assets/bianzhidai_COLR-RGB-DjPARIMm.otf) format("opentype")}#node-container{position:fixed;top:0;left:0;width:100vw;height:100vh;background-color:#121212;overflow:hidden;font-family:Bianzhidai,monospace;margin:0;padding:0}#editor{position:fixed;top:0;right:0;width:50%;height:100%;z-index:100;background-color:transparent;transition:background-color .3s ease}.add-webgl-button{position:fixed;bottom:20px;right:20px;padding:10px 20px;background:#1e1e1e33;color:#fff;border:1px solid #ff69b4;border-radius:8px;cursor:pointer;font-family:Bianzhidai,monospace;font-size:16px;z-index:1000;box-shadow:0 2px 4px #ff69b433;transition:all .3s ease}.add-webgl-button:hover{font-family:Bianzhidai,monospace;background:#ff69b433;color:#1e1e1e;transform:translateY(-2px);box-shadow:0 4px 8px #ff69b466}.add-webgl-button:active{font-family:Bianzhidai,monospace;transform:translateY(0);box-shadow:0 2px 4px #ff69b433}.webgl-button{font-family:Bianzhidai,monospace;position:fixed;bottom:20px;right:20px;padding:10px 20px;background-color:#1e1e1e33;color:#fff;border:1px solid #ff69b4;border-radius:4px;cursor:pointer;z-index:1000}.webgl-button:hover{background-color:#ff69b433;color:#1e1e1e}#editor.visible{background-color:#0003}.compile-button{position:absolute;bottom:10px;right:10px;padding:8px 16px;background-color:#1e1e1e33;color:#fff;border:1px solid #ff69b4;border-radius:4px;cursor:pointer;font-family:Bianzhidai,monospace}.compile-button:hover{background-color:#ff69b433;color:#1e1e1e;font-family:Bianzhidai,monospace}.diff-visualization-button{transition:all .3s ease;background-color:#4443!important}.diff-visualization-button:hover{background-color:#ff69b433!important;color:#1e1e1e!important;transform:translateY(-2px);box-shadow:0 4px 8px #ff69b466}.diff-visualization{box-shadow:0 8px 32px #000c;background-color:#0003}.diff-visualization pre{font-family:Courier New,monospace;line-height:1.4;margin:0;background-color:#1e1e1e33}.diff-visualization button{transition:all .2s ease;background-color:#4443}.diff-visualization button:hover{transform:scale(1.05);background-color:#ff69b433}.diff-visualization{scrollbar-width:thin;scrollbar-color:#ff69b4 #1e1e1e;overflow:auto}.diff-visualization::-webkit-scrollbar{width:8px;height:8px}.diff-visualization::-webkit-scrollbar-track{background:#1e1e1e33;border-radius:4px}.diff-visualization::-webkit-scrollbar-thumb{background:#ff69b433;border-radius:4px}.diff-visualization::-webkit-scrollbar-thumb:hover{background:#ff8cc633}.diff-visualization .tree-view{scrollbar-width:thin;scrollbar-color:#ff69b4 #1e1e1e;overflow-y:auto;overflow-x:hidden;background-color:#0003}.diff-visualization .tree-view::-webkit-scrollbar{width:8px}.diff-visualization .tree-view::-webkit-scrollbar-track{background:#1e1e1e33;border-radius:4px}.diff-visualization .tree-view::-webkit-scrollbar-thumb{background:#ff69b433;border-radius:4px}.diff-visualization .tree-view::-webkit-scrollbar-thumb:hover{background:#ff8cc633}.diff-visualization .detail-view{scrollbar-width:thin;scrollbar-color:#ff69b4 #1e1e1e;overflow-y:auto;overflow-x:hidden;background-color:#0003}.diff-visualization .detail-view::-webkit-scrollbar{width:8px}.diff-visualization .detail-view::-webkit-scrollbar-track{background:#1e1e1e33;border-radius:4px}.diff-visualization .detail-view::-webkit-scrollbar-thumb{background:#ff69b433;border-radius:4px}.diff-visualization .detail-view::-webkit-scrollbar-thumb:hover{background:#ff8cc633}.CodeMirror{width:100%;height:100%!important;font-family:monospace;font-size:14px;background:linear-gradient(.25turn,#ff69b400,#ff69b422,#ff69b400,#ff69b400),#000c!important}.CodeMirror-gutters{border-right:1px solid #ff69b4;background-color:#1e1e1e!important}.CodeMirror-present{background-color:#fff0!important;text-shadow:0 0 8px #ff69b4;caret-color:#ff69b4!important}.node{z-index:1;position:absolute;background:#1e1e1e;border:1px solid #ff69b4;border-radius:12px;box-shadow:0 4px 6px #ff69b433;-webkit-user-select:none;-moz-user-select:none;user-select:none;font-family:Bianzhidai,monospace;width:-moz-fit-content;width:fit-content}.node-content{padding:12px;position:relative}.node-content video,.node-content canvas,.node-content .checkbox-grid{width:320px;height:240px;-o-object-fit:cover;object-fit:cover;border-radius:4px;border:1px solid #ff69b4}.node[data-type=javascript],.node[data-type=checkbox]{width:-moz-fit-content;width:fit-content}.node-header{background:#1e1e1e;color:#ff69b4;padding:8px 12px;border-radius:12px 12px 0 0;cursor:move;font-weight:700;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #ff69b4}.code-editor{position:absolute;top:0;right:0;width:50%;height:100%;z-index:1000;background-color:#000c}.node-ports{position:relative;z-index:1001;display:flex;justify-content:space-between;padding:8px 12px;background:#1e1e1e;border-radius:0 0 12px 12px;border-top:1px solid #ff69b4}.input-port,.output-port{z-index:1001;position:relative;width:12px;height:12px;background:#ff69b4;border-radius:50%;cursor:pointer;transition:all .3s ease}.input-port:hover,.output-port:hover{background:#ff8dc7;box-shadow:0 0 8px #ff69b4}.checkbox-grid{display:grid;grid-template-columns:repeat(32,minmax(12px,1fr));gap:2px;width:100%;padding:8px;background:#1e1e1e;border-radius:4px;height:auto;min-height:480px}.checkbox-grid input[type=checkbox]{width:12px;height:12px;margin:0;cursor:pointer;accent-color:#ff69b4}#connections{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:1;fill:none}.connection-line{pointer-events:none;fill:none;stroke:#ff69b4;stroke-width:3}.expand-button{background:#1e1e1e;border:1px solid #ff69b4;border-radius:4px;padding:2px 8px;cursor:pointer;font-family:Bianzhidai,monospace;font-size:12px;z-index:102;color:#fff}.expand-button:hover{background:#ff69b4;color:#1e1e1e}.close-button{background:#1e1e1e;border:1px solid #ff69b4;border-radius:4px;padding:2px 8px;cursor:pointer;font-family:Bianzhidai,monospace;font-size:16px;font-weight:700;z-index:102;color:#fff;line-height:1;width:24px;height:24px;display:flex;align-items:center;justify-content:center;margin-left:5px;pointer-events:auto;position:relative}.close-button:hover{background:#f44;border-color:#f44;color:#fff}.header-buttons{display:flex;gap:8px}.node.expanded{position:fixed!important;left:20px!important;top:20px!important;width:calc(100vw - 40px)!important;height:calc(100vh - 40px)!important;z-index:100;background:#1e1e1ef2}.node.expanded .node-content{width:100%;height:calc(100% - 40px)}.node.expanded canvas{top:-7%;left:-7%;width:100%!important;height:100%!important}.node.expanded .node-header{position:absolute;top:0;right:0;background:transparent;z-index:101}.node.expanded .node-ports{display:none}#editor.transparent{background:#ffffff1a}#connection-svg{z-index:1000;pointer-events:none}.input-port,.output-port{z-index:1001;position:relative}.connection-line{pointer-events:none}.bounce-button,.speed-up-button,.slow-down-button{font-family:Bianzhidai,monospace;position:fixed;padding:10px 20px;right:20px;color:#fff;border:1px solid #ff69b4;border-radius:4px;cursor:pointer;z-index:1000;background-color:#1e1e1e;transition:all .3s ease}.bounce-button:hover,.speed-up-button:hover,.slow-down-button:hover{background-color:#ff69b4;color:#1e1e1e}.bounce-button{bottom:140px}.speed-up-button{bottom:100px}.slow-down-button{bottom:60px}.device-select-button{background:#1e1e1e;border:1px solid #ff69b4;color:#fff;cursor:pointer;padding:2px 5px;margin-left:5px;font-size:14px}.device-select-button:hover{background:#ff69b4;color:#1e1e1e}.device-select{background:#1e1e1e;color:#fff;border:1px solid #ff69b4;border-radius:4px;padding:5px;width:200px}.device-select option{padding:5px;background:#1e1e1e}.background-node{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:-1;pointer-events:none;opacity:1;transition:opacity .3s ease;background-color:transparent}.background-node canvas,.background-node video{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;opacity:.5}@keyframes chaos-rotate{0%{transform:rotate(calc(var(--chaos-time) * 360deg)) scale(1)}25%{transform:rotate(calc(180deg + var(--chaos-time) * 360deg)) scale(.5)}50%{transform:rotate(calc(-90deg + var(--chaos-time) * 360deg)) scale(1.5)}75%{transform:rotate(calc(360deg + var(--chaos-time) * 360deg)) scale(.8)}to{transform:rotate(calc(var(--chaos-time) * 360deg)) scale(1)}}@keyframes chaos-colors{0%{filter:hue-rotate(0deg) contrast(200%) brightness(150%)}33%{filter:hue-rotate(120deg) contrast(300%) brightness(50%)}66%{filter:hue-rotate(240deg) contrast(150%) brightness(200%)}to{filter:hue-rotate(360deg) contrast(200%) brightness(150%)}}@keyframes chaos-shake{0%,to{transform:translate(0)}25%{transform:translate(20px,-20px)}50%{transform:translate(-20px,20px)}75%{transform:translate(20px,20px)}}.chaos-mode{animation:update-chaos-time 10s linear infinite}@keyframes update-chaos-time{0%{--chaos-time: 0}to{--chaos-time: 1}}.chaos-mode .node{animation:infinite,chaos-shake .5s infinite!important;transition:all .3s ease!important;z-index:9999!important}.chaos-mode .node-content{animation:chaos-colors 2s infinite!important}.chaos-mode .node-header{background:linear-gradient(45deg,red,#0f0,#00f)!important;background-size:600% 600%!important;animation:chaos-colors 3s infinite!important}.chaos-mode canvas{mix-blend-mode:difference!important}.chaos-button{position:fixed;bottom:20px;right:20px;padding:10px 20px;background:linear-gradient(45deg,red,#f0f);color:#fff;border:none;border-radius:4px;cursor:pointer;font-family:Bianzhidai,monospace;font-size:16px;z-index:10000;animation:chaos-colors 3s infinite;transition:all .3s ease}.chaos-button:hover{transform:scale(1.1) rotate(5deg)}.chaos-angel{pointer-events:none;animation:chaos-rotate 3s infinite,chaos-float 4s infinite ease-in-out!important}@keyframes chaos-float{0%,to{transform:translateY(0)}50%{transform:translateY(-30px)}}.ai-input-container{display:flex;flex-direction:column;gap:10px;padding:10px}.ai-input{width:100%;min-height:60px;padding:8px;border:1px solid #444;border-radius:4px;background-color:#1e1e1e;color:#fff;resize:vertical;font-family:monospace}.ai-input:disabled{background-color:#2a2a2a;color:#666;cursor:not-allowed;border-color:#555}.ai-send-button{padding:8px 16px;background-color:#1e1e1e;color:#fff;border:1px solid #ff69b4;border-radius:4px;cursor:pointer;font-family:Bianzhidai,monospace;align-self:flex-end;transition:all .3s ease}.ai-send-button:hover{background-color:#ff69b4;color:#1e1e1e}.ai-send-button:disabled{background-color:#2a2a2a;color:#666;border-color:#555;cursor:not-allowed}.ai-send-button:disabled:hover{background-color:#2a2a2a;color:#666}.ai-response-container{position:relative;margin-top:10px}.copy-button{position:absolute;top:5px;right:5px;background:#1e1e1e;border:1px solid #ff69b4;border-radius:4px;padding:4px 8px;cursor:pointer;font-family:Bianzhidai,monospace;color:#fff;transition:all .3s ease;z-index:2}.copy-button:hover{background:#ff69b4;color:#1e1e1e}.ai-response{padding:10px;margin-top:10px;background-color:#2a2a2a;border-radius:4px;min-height:40px;color:#fff;font-family:monospace;white-space:pre-wrap;word-wrap:break-word;user-select:text;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text}.ai-response::-moz-selection{background:#ff69b4;color:#1e1e1e}.ai-response::selection{background:#ff69b4;color:#1e1e1e}.node.ai-node{width:320px}.node.ai-node.active{z-index:1000}.node-editor{position:absolute;top:0;left:0;width:100%;height:100%;background-color:#1e1e1eb3;z-index:1000;padding:20px;box-sizing:border-box;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.node-editor .CodeMirror{height:100%;background-color:#1e1e1eb3;border:1px solid rgba(255,105,180,.3);border-radius:4px}.node-editor .CodeMirror-gutters{background-color:#1e1e1eb3;border-right:1px solid rgba(255,105,180,.3)}.node-editor .CodeMirror-linenumber{color:#ffffff80}.mode-toggle-button{background:#1e1e1e;border:1px solid #ff69b4;border-radius:4px;padding:2px 8px;cursor:pointer;font-family:Bianzhidai,monospace;font-size:12px;color:#fff;transition:all .3s ease}.mode-toggle-button:hover{background:#ff69b4;color:#1e1e1e}.connection-status{position:absolute;top:5px;right:5px;width:10px;height:10px;border-radius:50%;transition:all .3s ease}.connection-status.connected{background-color:#4caf50;box-shadow:0 0 5px #4caf50}.connection-status.disconnected{background-color:#f44336;box-shadow:0 0 5px #f44336}.connection-status.disabled{background-color:#9e9e9e;box-shadow:0 0 5px #9e9e9e}.CodeMirror-lint-markers{width:16px}.CodeMirror-lint-tooltip{background-color:#ffd;border:1px solid black;border-radius:4px;color:#000;font-family:monospace;font-size:10pt;overflow:hidden;padding:2px 5px;position:fixed;white-space:pre;white-space:pre-wrap;z-index:10000;max-width:600px;opacity:0;transition:opacity .4s;-moz-transition:opacity .4s;-webkit-transition:opacity .4s;-o-transition:opacity .4s;-ms-transition:opacity .4s}.CodeMirror-lint-mark{background-position:left bottom;background-repeat:repeat-x}.CodeMirror-lint-mark-warning{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAADCAYAAAC09K7GAAAAAXNSR0IArs4c6QAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9sJFhQXEbhTg7YAAAAZdEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIEdJTVBXgQ4XAAAAMklEQVQI12NkgIIvJ3QXMjAwdDN+OaEbysDA4MPAwNDNwMCwiOHLCd1zX07o6kBVGQEAKBANtobskNMAAAAASUVORK5CYII=)}.CodeMirror-lint-mark-error{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAADCAYAAAC09K7GAAAAAXNSR0IArs4c6QAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9sJDw4cOCW1/KIAAAAZdEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIEdJTVBXgQ4XAAAAHElEQVQI12NggIL/DAz/GdA5/xkY/qPKMDAwAADLZwf5rvm+LQAAAABJRU5ErkJggg==)}.CodeMirror-lint-marker{background-position:center center;background-repeat:no-repeat;cursor:pointer;display:inline-block;height:16px;width:16px;vertical-align:middle;position:relative}.CodeMirror-lint-message{padding-left:18px;background-position:top left;background-repeat:no-repeat}.CodeMirror-lint-marker-warning,.CodeMirror-lint-message-warning{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAANlBMVEX/uwDvrwD/uwD/uwD/uwD/uwD/uwD/uwD/uwD6twD/uwAAAADurwD2tQD7uAD+ugAAAAD/uwDhmeTRAAAADHRSTlMJ8mN1EYcbmiixgACm7WbuAAAAVklEQVR42n3PUQqAIBBFUU1LLc3u/jdbOJoW1P08DA9Gba8+YWJ6gNJoNYIBzAA2chBth5kLmG9YUoG0NHAUwFXwO9LuBQL1giCQb8gC9Oro2vp5rncCIY8L8uEx5ZkAAAAASUVORK5CYII=)}.CodeMirror-lint-marker-error,.CodeMirror-lint-message-error{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAAHlBMVEW7AAC7AACxAAC7AAC7AAAAAAC4AAC5AAD///+7AAAUdclpAAAABnRSTlMXnORSiwCK0ZKSAAAATUlEQVR42mWPOQ7AQAgDuQLx/z8csYRmPRIFIwRGnosRrpamvkKi0FTIiMASR3hhKW+hAN6/tIWhu9PDWiTGNEkTtIOucA5Oyr9ckPgAWm0GPBog6v4AAAAASUVORK5CYII=)}.CodeMirror-lint-marker-multiple{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAcAAAAHCAMAAADzjKfhAAAACVBMVEUAAAAAAAC/v7914kyHAAAAAXRSTlMAQObYZgAAACNJREFUeNo1ioEJAAAIwmz/H90iFFSGJgFMe3gaLZ0od+9/AQZ0ADosbYraAAAAAElFTkSuQmCC);background-repeat:no-repeat;background-position:right bottom;width:100%;height:100%}#editor{position:absolute;width:400px;height:300px;background:#27282200;z-index:999;display:none;border-radius:5px;box-shadow:0 0 10px #0000001a}#editor.expanded{width:50vw;height:80vh;top:50%!important;left:50%!important;transform:translate(-50%,-50%)}canvas.expanded{width:100vw!important;height:100vh!important}#editor.fullscreen{width:50vw;height:80vh;top:50%!important;left:50%!important;transform:translate(-50%,-50%)}.CodeMirror{height:100%!important;font-size:14px}canvas:fullscreen{width:100vw;height:100vh}.node{transition:all .3s ease-in-out;position:absolute}.node.expanded{width:calc(100vw - 40px)!important;height:calc(100vh - 40px)!important;top:20px!important;left:20px!important;z-index:998}.node.expanded .node-content{width:100%!important;height:100%!important}.node.expanded canvas{width:100%!important;height:100%!important}.node.expanded~#editor,.node.expanded+#editor{width:70vw;height:90vh;background:#2728224d;z-index:9999}.CodeMirror{height:100%!important;font-size:14px;background:transparent!important}.CodeMirror-gutters{background:#27282266!important}.CodeMirror-lines{background:#27282233}
