:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}.card{padding:2em}#app{max-width:1280px;margin:0 auto;text-align:center}#app.editor-mode{max-width:none;margin:0;padding:0;width:100vw;height:100vh;overflow:hidden}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.alignment-lines[data-v-d6ecd527]{position:absolute;width:100%;height:100%;top:0;left:0;pointer-events:none;z-index:15010;overflow:hidden}.alignment-line[data-v-d6ecd527]{position:absolute;background:#007bffb3;opacity:0;transition:opacity .15s ease}.alignment-line.show[data-v-d6ecd527]{opacity:1}.alignment-line.horizontal[data-v-d6ecd527]{width:100%;height:1px;left:0}.alignment-line.vertical[data-v-d6ecd527]{height:100%;width:1px;top:0}.alignment-line.element-edge[data-v-d6ecd527]{background:#50c8ff99}.editor-handle[data-v-eca2d499]{position:absolute;box-sizing:border-box;border:1px dashed rgba(255,255,255,.5);cursor:move;z-index:10001;touch-action:none;will-change:transform,top,left;transition:border-color .2s ease}.editor-handle.dragging[data-v-eca2d499]{border:2px solid #ff6b35;box-shadow:0 4px 12px #ff6b3566;z-index:10003}.editor-handle.selected[data-v-eca2d499],.editor-handle[data-v-eca2d499]:hover{border:2px solid #00aaff;box-shadow:0 0 10px #46afffb3;z-index:10002}.control-preview[data-v-eca2d499]{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;width:100%;text-align:center;color:#fff;font-size:12px}.control-icon[data-v-eca2d499]{font-size:20px;margin-bottom:4px}.control-label[data-v-eca2d499]{font-size:10px;opacity:.8;word-break:break-all;max-width:100%;overflow:hidden}.control-joystick[data-v-eca2d499],.control-gamepad_stick[data-v-eca2d499]{border-radius:50%!important}.control-radial[data-v-eca2d499]{border-radius:50%!important;border-style:solid!important}.control-slider[data-v-eca2d499]{border-radius:20px!important}.control-kb-container[data-v-eca2d499]{overflow:visible!important}.no-props[data-v-31a06c65]{padding:20px;text-align:center;color:#888;font-size:12px}.property-panel[data-v-64df8bfa]{background:linear-gradient(135deg,#15193bf2,#3a3a3cf2);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#f5f5f7;padding:20px;border-radius:12px;width:340px;box-shadow:0 5px 25px #0000004d;border:1px solid rgba(255,255,255,.1);max-height:calc(100vh - 100px);overflow-y:auto;pointer-events:auto}.property-panel[data-v-64df8bfa]::-webkit-scrollbar{width:6px}.property-panel[data-v-64df8bfa]::-webkit-scrollbar-track{background:#ffffff0d;border-radius:3px}.property-panel[data-v-64df8bfa]::-webkit-scrollbar-thumb{background:#fff3;border-radius:3px;transition:background .2s ease}.property-panel[data-v-64df8bfa]::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.property-panel[data-v-64df8bfa]{scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.2) rgba(255,255,255,.05)}.close-btn[data-v-64df8bfa]{position:absolute;top:8px;right:8px;width:28px;height:28px;background:#ffffff1a;border:none;border-radius:50%;color:#f5f5f7;cursor:pointer;font-size:16px;padding:0;touch-action:manipulation}h4[data-v-64df8bfa]{margin:0 0 10px;border-bottom:1px solid #444;padding-bottom:8px;font-size:16px}.delete-btn[data-v-64df8bfa]{width:100%;background:#e74c3c;color:#fff;margin-top:15px;padding:10px;border:none;border-radius:2px;cursor:pointer;font-size:14px;touch-action:manipulation}.unknown-control[data-v-93c9896d]{border:2px dashed red;color:red;display:flex;align-items:center;justify-content:center;padding:10px;background:#ff00001a;box-sizing:border-box}.control-tabs[data-v-5a123b10]{display:flex;flex-direction:column;height:100%;position:relative}.tab-headers[data-v-5a123b10]{display:flex;position:absolute;top:-60px;left:-20px;z-index:1}.tab-header[data-v-5a123b10]{padding:8px 16px;background:#3a3a3ce6;border:none;color:#ccc;cursor:pointer;border-radius:0;font-size:14px}.tab-header[data-v-5a123b10]:first-child{border-top-left-radius:10px}.tab-header[data-v-5a123b10]:last-child{border-top-right-radius:10px}.tab-header.active[data-v-5a123b10]{background:gray;color:#fff;font-weight:600}.tab-header[data-v-5a123b10]:hover:not(.active){color:#fff}.tab-contents[data-v-5a123b10]{flex:1;padding-top:10px}.tab-content[data-v-5a123b10]{display:none}.tab-content.active[data-v-5a123b10]{display:block}.control-type-grid[data-v-5a123b10]{display:grid;grid-template-columns:repeat(auto-fill,minmax(60px,1fr));gap:30px}.control-type-btn[data-v-5a123b10]{background:transparent;color:#fff;border:none;cursor:pointer;font-size:11px;display:flex;flex-direction:column;align-items:center;gap:6px;padding:0}.control-type-btn img[data-v-5a123b10]{width:50px;height:50px;object-fit:contain}.control-type-btn:hover img[data-v-5a123b10]{transform:scale(1.1)}.control-tabs[data-v-0cae8185]{display:flex;flex-direction:column;height:100%;position:relative}.tab-headers[data-v-0cae8185]{display:flex;position:absolute;top:-60px;left:-20px;z-index:1}.tab-header[data-v-0cae8185]{padding:8px 16px;background:#3a3a3ce6;border:none;color:#ccc;cursor:pointer;font-size:14px;border-radius:0}.tab-header[data-v-0cae8185]:first-child{border-top-left-radius:10px}.tab-header[data-v-0cae8185]:last-child{border-top-right-radius:10px}.tab-header.active[data-v-0cae8185]{background:gray;color:#fff;font-weight:600}.tab-header[data-v-0cae8185]:hover:not(.active){color:#fff}.tab-contents[data-v-0cae8185]{flex:1;padding-top:0}.tab-content[data-v-0cae8185]{display:none}.tab-content.active[data-v-0cae8185]{display:block}.control-type-grid[data-v-0cae8185]{display:grid;grid-template-columns:repeat(auto-fill,minmax(60px,1fr));gap:16px}.control-type-btn[data-v-0cae8185]{background:transparent;color:#fff;border:none;cursor:pointer;font-size:11px;display:flex;flex-direction:column;align-items:center;gap:6px;padding:0}.control-type-btn img[data-v-0cae8185]{width:50px;height:50px;object-fit:contain}.control-type-btn:hover img[data-v-0cae8185]{transform:scale(1.1)}.add-control-panel[data-v-c7b856b6]{position:fixed;bottom:0;left:0;right:0;background:linear-gradient(135deg,#2c2c2ef2,#3a3a3cf2);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#f5f5f7;padding:25px 20px 15px;box-shadow:0 -5px 25px #0000004d;border-top:1px solid rgba(255,255,255,.1);z-index:15004;min-height:150px}.tab-collapse-btn[data-v-c7b856b6]{position:absolute;right:0;top:-19px;width:40px;height:16px;background:#808080cc;border:none;border-radius:8px 8px 0 0;cursor:pointer}.tab-collapse-btn[data-v-c7b856b6]:before{content:"";width:0;height:0;border-left:6px solid transparent;border-right:6px solid transparent;border-top:8px solid #fff;margin-left:-4px}.control-tabs[data-v-c7b856b6]{display:flex;flex-direction:column;height:100%}.tab-headers[data-v-c7b856b6]{display:flex;gap:8px;margin-bottom:12px;border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:8px}.tab-header[data-v-c7b856b6]{padding:8px 16px;background:#ffffff0d;border:none;border-radius:6px 6px 0 0;color:#f5f5f799;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s ease}.tab-header[data-v-c7b856b6]:hover{background:#ffffff1a;color:#f5f5f7cc}.tab-header.active[data-v-c7b856b6]{background:#007aff33;color:#007aff;border-bottom:2px solid #007aff}.prop-group[data-v-39eda102]{display:flex;align-items:center;justify-content:space-between;gap:10px}label[data-v-39eda102]{font-size:12px;color:#ffffffb3;flex-shrink:0;font-weight:500;letter-spacing:.3px;min-width:75px}.input-wrapper[data-v-39eda102]{flex:1;min-width:0}input[data-v-39eda102]{width:100%;background:#3a3a3c99;border:1px solid rgba(255,255,255,.12);color:#f5f5f7;border-radius:6px;padding:6px 10px;font-size:12px;transition:all .2s ease;outline:none}input[data-v-39eda102]:hover{background:#3a3a3ccc;border-color:#fff3}input[data-v-39eda102]:focus{background:#3a3a3ce6;border-color:#007aff;box-shadow:0 0 0 2px #007aff26}input[data-v-39eda102]::placeholder{color:#ffffff4d}.prop-group[data-v-a38ef61d]{display:flex;align-items:center;justify-content:space-between;gap:10px}label[data-v-a38ef61d]{font-size:12px;color:#ffffffb3;flex-shrink:0;font-weight:500;letter-spacing:.3px;min-width:75px;white-space:nowrap}.slider-value[data-v-a38ef61d]{font-weight:600;color:#007aff;margin-left:3px;font-size:11px}.slider-wrapper[data-v-a38ef61d]{flex:1;min-width:0;padding:8px 0;cursor:pointer;touch-action:none}.slider-track[data-v-a38ef61d]{position:relative;width:100%;height:5px;background:#ffffff1f;border-radius:3px}.slider-track[data-v-a38ef61d]:hover{background:#ffffff2e}.slider-fill[data-v-a38ef61d]{position:absolute;top:0;left:0;height:100%;background:linear-gradient(90deg,#007aff,#0051d5);border-radius:3px;pointer-events:none}.slider-thumb[data-v-a38ef61d]{position:absolute;top:50%;width:16px;height:16px;background:linear-gradient(135deg,#007aff,#0051d5);border-radius:50%;box-shadow:0 2px 4px #007aff66;transform:translate(-50%,-50%);pointer-events:none;transition:box-shadow .2s ease}.slider-wrapper:hover .slider-thumb[data-v-a38ef61d]{box-shadow:0 2px 6px #007aff80}.prop-group[data-v-7d32e617]{display:flex;align-items:center;justify-content:space-between;gap:10px}label[data-v-7d32e617]{font-size:12px;color:#ffffffb3;flex-shrink:0;font-weight:500;letter-spacing:.3px;min-width:75px}.button-group[data-v-7d32e617]{flex:1;display:flex;background:#ffffff14;border-radius:6px;padding:2px;gap:3px}.option-btn[data-v-7d32e617]{flex:1;background:transparent;color:#ffffffb3;border:none;padding:6px 12px;font-size:12px;cursor:pointer;border-radius:5px;transition:all .2s ease;font-weight:500;white-space:nowrap}.option-btn[data-v-7d32e617]:hover{background:#ffffff1a;color:#ffffffe6}.option-btn.active[data-v-7d32e617]{background:linear-gradient(135deg,#007aff,#0051d5);color:#fff;box-shadow:0 1px 4px #007aff4d}.option-btn.active[data-v-7d32e617]:hover{background:linear-gradient(135deg,#08f,#0061e5)}.background-panel[data-v-2095aac0]{position:fixed;bottom:0;left:0;right:0;background:linear-gradient(135deg,#2c2c2ef2,#3a3a3cf2);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#f5f5f7;padding:25px 20px 20px;box-shadow:0 -5px 25px #0000004d;border-top:1px solid rgba(255,255,255,.1);z-index:15004;min-height:150px;max-height:60vh;overflow-y:auto}.panel-collapse-btn[data-v-2095aac0]{position:absolute;right:0;top:-19px;width:40px;height:16px;background:#808080cc;border:none;border-radius:8px 8px 0 0;cursor:pointer}.panel-collapse-btn[data-v-2095aac0]:before{content:"";width:0;height:0;border-left:6px solid transparent;border-right:6px solid transparent;border-top:8px solid #fff;margin-left:-4px;display:inline-block}.panel-header[data-v-2095aac0]{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.panel-title[data-v-2095aac0]{font-size:15px;font-weight:600}.clear-btn[data-v-2095aac0]{background:#ff3b3026;color:#ff6961;border:1px solid rgba(255,59,48,.3);padding:5px 12px;border-radius:6px;cursor:pointer;font-size:12px}.clear-btn[data-v-2095aac0]:hover{background:#ff3b3040}.bg-tabs[data-v-2095aac0]{display:flex;gap:8px;margin-bottom:14px;border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:8px}.bg-tab[data-v-2095aac0]{padding:7px 18px;background:#ffffff0d;border:none;border-radius:6px 6px 0 0;color:#f5f5f799;cursor:pointer;font-size:13px;font-weight:500;transition:all .2s ease}.bg-tab[data-v-2095aac0]:hover{background:#ffffff1a}.bg-tab.active[data-v-2095aac0]{background:#007aff33;color:#007aff;border-bottom:2px solid #007aff}.preset-grid[data-v-2095aac0]{display:grid;grid-template-columns:repeat(auto-fill,minmax(64px,1fr));gap:10px;margin-bottom:14px}.preset-item[data-v-2095aac0]{position:relative;height:48px;border-radius:8px;cursor:pointer;border:2px solid rgba(255,255,255,.12);background-size:cover;background-position:center;transition:transform .15s ease,border-color .15s ease}.preset-item[data-v-2095aac0]:hover{transform:translateY(-2px);border-color:#ffffff4d}.preset-item.selected[data-v-2095aac0]{border-color:#007aff;box-shadow:0 0 0 2px #007aff4d}.custom-color[data-v-2095aac0]{display:flex;align-items:center;justify-content:center;font-size:22px;color:#fff9;background:#ffffff0f}.custom-color input[type=color][data-v-2095aac0]{position:absolute;inset:0;opacity:0;cursor:pointer}.image-controls[data-v-2095aac0]{display:flex;flex-direction:column;gap:12px}.opacity-row[data-v-2095aac0]{margin-top:14px}.floating-keyboard[data-v-06b55ea6]{--bg: #2a2a2a;--plate: #3a3a3a;--key: #1a1a1a;--key-top: #2d2d2d;--key-edge: #0a0a0a;--key-shadow: rgba(0, 0, 0, .7);--text: #e0e0e0;--key-width: 4vw ;--key-height: 6.2vh ;--key-gap: .3vw ;--key-font-size: .72vw ;--key-border-radius: .42vw ;--key-padding: .1vw ;position:fixed;bottom:0;left:0;right:0;width:100%;max-width:none;background:var(--plate);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:12px 12px 0 0;box-shadow:0 -8px 30px #000c,inset 0 1px 2px #ffffff0d;z-index:20000;display:flex;flex-direction:column;overflow:hidden}.keyboard-header[data-v-06b55ea6]{display:flex;justify-content:flex-end;align-items:center;padding:calc(.5 * var(--key-padding)) calc(2 * var(--key-padding));background:transparent;min-height:calc(.8 * var(--key-height));pointer-events:none}.current-keys-display[data-v-06b55ea6]{background:#2c2c2e;color:#f5f5f7;padding:8px 16px;border-radius:6px;font-size:16px;min-height:20px;flex-grow:1;text-align:center;margin-right:10px}.clear-key[data-v-06b55ea6]{background:#ff950033;border-color:#ff950066;color:#ff9500}.clear-key[data-v-06b55ea6]:hover{background:#ff95004d;border-color:#ff950080}.keyboard-close-btn[data-v-06b55ea6]{position:absolute;right:calc(2 * var(--key-padding));top:calc(1 * var(--key-padding));width:calc(1 * var(--key-width));height:calc(.8 * var(--key-height));background:linear-gradient(180deg,#2d2d2d,#1a1a1a);border:none;border-radius:var(--key-border-radius);cursor:pointer;z-index:1001;display:flex;align-items:center;justify-content:center;transition:all .15s ease;pointer-events:auto;box-shadow:0 4px 0 var(--key-edge),0 6px 12px var(--key-shadow),inset 0 1px 2px #ffffff14,inset 0 -2px 2px #0000004d}.keyboard-close-btn[data-v-06b55ea6]:before{content:"";width:0;height:0;border-left:6px solid transparent;border-right:6px solid transparent;border-top:8px solid var(--text);transition:all .15s ease}.keyboard-close-btn[data-v-06b55ea6]:hover{background:linear-gradient(180deg,#3a3a3a,#2a2a2a);transform:translateY(-1px);box-shadow:0 5px 0 var(--key-edge),0 7px 15px var(--key-shadow),inset 0 1px 2px #ffffff1f,inset 0 -2px 2px #0000004d}.keyboard-close-btn[data-v-06b55ea6]:active{background:linear-gradient(180deg,#1a1a1a,#0a0a0a);transform:translateY(3px);box-shadow:0 1px #000,0 2px 6px var(--key-shadow),inset 0 3px 6px #00000080}.keyboard-body[data-v-06b55ea6]{height:auto;overflow:hidden;padding:calc(.3 * var(--key-padding)) var(--key-padding) var(--key-padding) var(--key-padding);display:flex;flex-direction:column;gap:calc(.4 * var(--key-gap))}.keyboard-layout[data-v-06b55ea6]{display:flex;flex-direction:column;gap:calc(.8 * var(--key-gap));width:100%}.top-function-row[data-v-06b55ea6]{display:flex;gap:var(--key-gap);padding:0 calc(.3 * var(--key-padding));margin-bottom:calc(.6 * var(--key-gap))}.top-function-row .vk-key[data-v-06b55ea6]{min-width:calc(.82 * var(--key-width));height:calc(.82 * var(--key-height));font-size:calc(.72 * var(--key-font-size));white-space:pre-line;line-height:1;padding:calc(.4 * var(--key-padding))}.main-keyboard-area[data-v-06b55ea6]{display:flex;gap:calc(.8 * var(--key-width));padding:0 calc(.5 * var(--key-padding));width:100%;max-width:100%;justify-content:flex-start}.main-keys[data-v-06b55ea6]{display:flex;flex-direction:column;gap:var(--key-gap)}.nav-keys[data-v-06b55ea6]{display:flex;flex-direction:column;gap:var(--key-gap);flex-shrink:0}.nav-top[data-v-06b55ea6],.nav-middle[data-v-06b55ea6]{display:grid;grid-template-columns:repeat(3,var(--key-width));gap:var(--key-gap)}.nav-arrows[data-v-06b55ea6]{display:flex;flex-direction:column;gap:var(--key-gap);margin-top:calc(.8 * var(--key-width))}.arrow-up[data-v-06b55ea6]{display:flex;justify-content:center}.arrow-bottom[data-v-06b55ea6]{display:grid;grid-template-columns:repeat(3,var(--key-width));gap:var(--key-gap)}.numpad-keys[data-v-06b55ea6]{display:grid;grid-template-columns:repeat(4,var(--key-width));grid-template-rows:repeat(5,auto);gap:var(--key-gap);flex-shrink:0}.numpad-row[data-v-06b55ea6]{display:contents}.numpad-row-2 .numpad-tall[data-v-06b55ea6],.numpad-row-4 .numpad-tall[data-v-06b55ea6]{grid-row:span 2}.numpad-row-5 .numpad-wide[data-v-06b55ea6]{grid-column:span 2}.key-row[data-v-06b55ea6]{display:flex;gap:var(--key-gap);justify-content:flex-start;width:100%;margin-bottom:3px}.key-row[data-v-06b55ea6]:first-child{margin-bottom:10px}.vk-key[data-v-06b55ea6]{background:linear-gradient(180deg,var(--key-top) 0%,var(--key) 100%);color:var(--text);border:none;padding:var(--key-padding) calc(1.5 * var(--key-padding));border-radius:var(--key-border-radius);text-align:center;cursor:pointer;font-size:var(--key-font-size);font-weight:500;min-width:var(--key-width);height:var(--key-height);display:flex;align-items:center;justify-content:center;transition:all .15s ease;-webkit-user-select:none;user-select:none;touch-action:manipulation;box-shadow:0 4px 0 var(--key-edge),0 6px 12px var(--key-shadow),inset 0 1px 2px #ffffff14,inset 0 -2px 2px #0000004d;position:relative;transform:translateY(0)}.extra-gap-left[data-v-06b55ea6]{margin-left:calc(var(--key-width) + var(--key-gap))}.half-gap-left[data-v-06b55ea6]{margin-left:calc(.5 * (var(--key-width) + var(--key-gap)))}.double-gap-left[data-v-06b55ea6]{margin-left:calc(var(--key-width) + .5 * (var(--key-width) + var(--key-gap)))}.gamepad-key[data-v-06b55ea6]{background:linear-gradient(180deg,#0078d4,#005a9e);color:#fff;font-weight:600;box-shadow:0 3px #004070,0 4px 8px #0078d466,inset 0 1px #fff3}.gamepad-key[data-v-06b55ea6]:hover{background:linear-gradient(180deg,#106ebe,#004d8c);transform:translateY(-1px);box-shadow:0 4px #004070,0 5px 10px #0078d480,inset 0 1px #ffffff40}.gamepad-key[data-v-06b55ea6]:active{background:linear-gradient(180deg,#004d8c,#003d70);box-shadow:0 1px #002850,0 2px 4px #005a9e66,inset 0 2px 4px #0000004d;transform:translateY(2px)}.vk-key[data-v-06b55ea6]:hover{background:linear-gradient(180deg,#3a3a3a,#2a2a2a);box-shadow:0 5px 0 var(--key-edge),0 7px 15px var(--key-shadow),inset 0 1px 2px #ffffff1f,inset 0 -2px 2px #0000004d;transform:translateY(-1px)}.vk-key[data-v-06b55ea6]:active{background:linear-gradient(180deg,#1a1a1a,#0a0a0a);box-shadow:0 1px 0 var(--key-edge),0 2px 6px var(--key-shadow),inset 0 3px 6px #00000080;transform:translateY(3px)}.vk-key.active[data-v-06b55ea6]{background:linear-gradient(180deg,#06f,#04c);box-shadow:0 3px #002a80,0 4px 10px #0066ff80,inset 0 1px 2px #ffffff40,inset 0 -2px 2px #0000004d;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.3)}.shift-key.active[data-v-06b55ea6],.special-key.active[data-v-06b55ea6]{background:linear-gradient(180deg,#06f,#04c)!important;box-shadow:0 3px #002a80,0 4px 10px #0066ff80,inset 0 1px 2px #ffffff40,inset 0 -2px 2px #0000004d!important;color:#fff!important;text-shadow:0 1px 2px rgba(0,0,0,.3)}.shift-key[data-v-06b55ea6]{flex-grow:0;min-width:calc(2.5 * var(--key-width) + 1.5 * var(--key-gap));background:linear-gradient(180deg,#252525,#151515);box-shadow:0 4px #050505,0 6px 12px #000c,inset 0 1px 2px #ffffff0d,inset 0 -2px 2px #0006}.shift-key[data-v-06b55ea6]:hover{background:linear-gradient(180deg,#303030,#1a1a1a);box-shadow:0 5px #050505,0 7px 15px #000000e6,inset 0 1px 2px #ffffff14,inset 0 -2px 2px #0006}.space-key[data-v-06b55ea6]{flex-grow:0;min-width:calc(6 * var(--key-width) + 5 * var(--key-gap))}.backspace-key[data-v-06b55ea6],.enter-key[data-v-06b55ea6],.caps-key[data-v-06b55ea6]{flex-grow:0;min-width:calc(2 * var(--key-width) + var(--key-gap))}.one-half-key[data-v-06b55ea6]{flex-grow:0;min-width:calc(1.5 * var(--key-width) + .5 * var(--key-gap))}.bottom-fn-key[data-v-06b55ea6]{flex-grow:0;min-width:calc(1.3 * var(--key-width) + .1 * var(--key-gap))}.enter-key.primary[data-v-06b55ea6]{background:#34c759}.special-key[data-v-06b55ea6]{background:linear-gradient(180deg,#252525,#151515);font-size:calc(.85 * var(--key-font-size));box-shadow:0 4px #050505,0 6px 12px #000c,inset 0 1px 2px #ffffff0d,inset 0 -2px 2px #0006}.special-key[data-v-06b55ea6]:hover{background:linear-gradient(180deg,#303030,#1a1a1a);box-shadow:0 5px #050505,0 7px 15px #000000e6,inset 0 1px 2px #ffffff14,inset 0 -2px 2px #0006}.special-key[data-v-06b55ea6]:active{background:linear-gradient(180deg,#151515,#050505);box-shadow:0 1px #000,0 2px 6px #000000e6,inset 0 3px 6px #0009}.numpad-key[data-v-06b55ea6]{font-size:calc(1.1 * var(--key-font-size))}.numpad-tall[data-v-06b55ea6]{height:calc(2 * var(--key-height) + var(--key-gap));font-size:calc(1.3 * var(--key-font-size))}.numpad-wide[data-v-06b55ea6]{min-width:calc(2 * var(--key-width) + var(--key-gap))}.nav-keys .vk-key[data-v-06b55ea6],.numpad-keys .vk-key[data-v-06b55ea6]{white-space:pre-line;line-height:1.1;font-size:calc(.85 * var(--key-font-size))}.gamepad-combo-bar[data-v-06b55ea6]{display:flex;align-items:center;gap:8px;padding:6px 10px;margin-top:calc(.4 * var(--key-gap));background:#00000059;border-radius:6px;color:#f5f5f7;font-size:calc(.9 * var(--key-font-size))}.gamepad-combo-label[data-v-06b55ea6]{opacity:.7;flex-shrink:0}.gamepad-combo-preview[data-v-06b55ea6]{flex:1;min-width:0;color:#0a84ff;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gamepad-combo-clear[data-v-06b55ea6]{background:#ff950033;border:1px solid rgba(255,149,0,.4);color:#ff9500;border-radius:6px;padding:4px 10px;cursor:pointer;font-size:calc(.9 * var(--key-font-size));transition:all .15s ease}.gamepad-combo-clear[data-v-06b55ea6]:hover{background:#ff95004d;border-color:#ff950099}.editor-rotated .floating-keyboard[data-v-06b55ea6]{--key-width: 5vh ;--key-height: 8vw ;--key-gap: .3vh ;--key-font-size: .9vh ;--key-border-radius: .4vh ;--key-padding: .15vh }.toolbar-keys[data-v-2b92fd00]{display:flex;gap:8px;align-items:center;justify-content:center;flex-wrap:wrap}.keys-display[data-v-2b92fd00]{display:flex;gap:4px;align-items:center;flex-wrap:wrap;position:relative}.toolbar-key[data-v-2b92fd00]{background:#ffffff26;color:#fff;padding:4px;border-radius:50%;border:1px solid rgba(255,255,255,.2);width:25px;height:25px;text-align:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);box-shadow:0 1px 3px #0003;position:relative;cursor:pointer;display:flex;align-items:center;justify-content:center;line-height:1.1;word-break:break-word;overflow:visible;transition:all .2s ease;white-space:nowrap}.toolbar-key[data-v-2b92fd00]:hover{background:#ffffff40;border-color:#fff6;transform:scale(1.05);box-shadow:0 2px 8px #0000004d}.toolbar-key[data-v-2b92fd00]:active{transform:scale(.95);background:#fff3}.toolbar-key.empty[data-v-2b92fd00]{border:2px dashed rgba(255,255,255,.3);background:#ffffff0d;font-size:14px!important;font-weight:700!important}.toolbar-key.empty[data-v-2b92fd00]:hover{border-color:#ffffff80;background:#ffffff1a}.remove-key[data-v-2b92fd00]{position:absolute;top:-4px;right:-4px;width:16px;height:16px;background:#ff3b30e6;color:#fff;border:1px solid rgba(255,255,255,.3);border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:10;transition:all .2s ease;box-sizing:border-box;font-size:11px;font-weight:700;font-family:Arial,sans-serif;line-height:16px;text-align:center;padding:0;margin:0}.toolbar-key:hover .remove-key[data-v-2b92fd00]{background:#ff3b30;transform:scale(1.1)}.add-key-btn[data-v-2b92fd00]{background:#0f03;color:#fff;padding:0;border:1px dashed rgba(255,255,255,.4);border-radius:8px;width:25px;height:25px;font-size:20px;line-height:10px;cursor:pointer;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);transition:all .2s ease}.add-key-btn[data-v-2b92fd00]:hover{background:#00ff004d;border-color:#fff9}.add-key-btn[data-v-2b92fd00]:disabled{opacity:.5;cursor:not-allowed;background:#80808033;border-style:solid}.toolbar-key.selected[data-v-2b92fd00]{background:#007bff4d;border-color:#007bff99;box-shadow:0 0 0 2px #007bff66}.toolbar-key.selected[data-v-2b92fd00]:hover{background:#007bff66;border-color:#007bffcc}.key-connector[data-v-2b92fd00]{color:#fff;font-size:14px;font-weight:700;display:flex;align-items:center;justify-content:center;margin:0 2px;opacity:.8}.editor-toolbar[data-v-3950ec03]{position:fixed;top:5px;left:50%;width:80vw;max-width:1200px;background:#26282b4d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#f5f5f7;padding:8px 20px;box-shadow:0 -4px 20px #0003;border-top:1px solid rgba(255,255,255,.1);z-index:15002;display:flex;gap:16px;align-items:center;justify-content:space-between;box-sizing:border-box;transition:width .3s cubic-bezier(.4,0,.2,1),padding .3s cubic-bezier(.4,0,.2,1),border-radius .3s cubic-bezier(.4,0,.2,1);cursor:move;touch-action:none}.editor-toolbar.dragging[data-v-3950ec03]{transition:none!important;-webkit-user-select:none;user-select:none;cursor:grabbing}.editor-toolbar button[data-v-3950ec03],.editor-toolbar input[data-v-3950ec03],.editor-toolbar textarea[data-v-3950ec03],.editor-toolbar select[data-v-3950ec03]{cursor:pointer;touch-action:none}.editor-toolbar.collapsed[data-v-3950ec03]{width:auto;padding:8px 12px;border-radius:20px}.editor-toolbar[data-v-3950ec03]:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#007bff1a,#ffffff0d,#007bff1a);pointer-events:none}.expand-button[data-v-3950ec03]{background:linear-gradient(135deg,#007aff,#0051d5);color:#fff;border:none;padding:6px 12px;border-radius:16px;cursor:pointer;font-size:12px;font-weight:500;display:flex;align-items:center;gap:6px;transition:all .3s ease;box-shadow:0 2px 8px #007aff4d;white-space:nowrap}.expand-button[data-v-3950ec03]:hover{background:linear-gradient(135deg,#08f,#0061e5);transform:translateY(-1px);box-shadow:0 4px 12px #007aff66}.expand-button[data-v-3950ec03]:active{transform:translateY(0)}.expand-button svg[data-v-3950ec03]{flex-shrink:0;width:16px;height:16px}.collapse-button[data-v-3950ec03]{background:#ffffff1a!important;padding:8px!important;min-width:32px;display:flex;align-items:center;justify-content:center}.collapse-button[data-v-3950ec03]:hover{background:#fff3!important}.toolbar-dots[data-v-3950ec03]{display:flex;flex-direction:column;gap:3px;margin-right:8px;cursor:grab;padding:6px 4px;border-radius:6px;touch-action:none;-webkit-user-select:none;user-select:none;transition:background-color .2s ease;position:relative;z-index:1}.toolbar-dots[data-v-3950ec03]:hover{background-color:#ffffff14}.toolbar-dots[data-v-3950ec03]:active,.editor-toolbar.dragging .toolbar-dots[data-v-3950ec03]{cursor:grabbing;background-color:#ffffff26}.dot-row[data-v-3950ec03]{display:flex;gap:3px}.dot[data-v-3950ec03]{width:4px;height:4px;background:#fff9;border-radius:50%;display:block}.toolbar-center[data-v-3950ec03]{flex:1;display:flex;align-items:center;justify-content:center}.toolbar-text[data-v-3950ec03]{text-align:center;font-size:13px;color:#fffc;font-weight:400;letter-spacing:.5px}.toolbar-buttons[data-v-3950ec03]{display:flex;gap:8px;align-items:center}.toolbar-buttons button[data-v-3950ec03]{background:linear-gradient(135deg,#19193ccc,#141432e6);color:#fff;border:none;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:13px;font-weight:500;transition:all .3s ease;box-shadow:0 2px 8px #19193c4d;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;gap:6px}.toolbar-buttons button[data-v-3950ec03]:first-child{background:#007aff;box-shadow:0 2px 8px #4a90e24d}.add-icon[data-v-3950ec03]{flex-shrink:0}.toolbar-buttons button[data-v-3950ec03]:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s}.toolbar-buttons button[data-v-3950ec03]:hover{background:linear-gradient(135deg,#232346e6,#1e1e3c);transform:translateY(-2px);box-shadow:0 4px 12px #19193c66}.toolbar-buttons button[data-v-3950ec03]:first-child:hover{background:linear-gradient(135deg,#5ba0f2,#4a8acd);box-shadow:0 4px 12px #4a90e266}.toolbar-buttons button[data-v-3950ec03]:hover:before{left:100%}.toolbar-buttons button[data-v-3950ec03]:active{transform:translateY(0);box-shadow:0 2px 6px #19193c4d}.toolbar-buttons button[data-v-3950ec03]:first-child:active{box-shadow:0 2px 6px #4a90e24d}.toolbar-buttons button.bg-button[data-v-3950ec03]{background:linear-gradient(135deg,#8e44ad,#6c3483);box-shadow:0 2px 8px #8e44ad4d}.toolbar-buttons button.bg-button[data-v-3950ec03]:hover{background:linear-gradient(135deg,#9b59b6,#8e44ad);box-shadow:0 4px 12px #8e44ad66}.toolbar-buttons button.restore-official[data-v-3950ec03]{background:linear-gradient(135deg,#ff9500,#e8850e);box-shadow:0 2px 8px #ff95004d}.toolbar-buttons button.restore-official[data-v-3950ec03]:hover{background:linear-gradient(135deg,#ffa726,#ff9500);box-shadow:0 4px 12px #ff950066}.toolbar-buttons button.restore-official[data-v-3950ec03]:active{box-shadow:0 2px 6px #ff95004d}.toolbar-buttons button.save[data-v-3950ec03]{background:linear-gradient(135deg,#34c759,#28a745);box-shadow:0 2px 8px #34c7594d}.toolbar-buttons button.save[data-v-3950ec03]:hover{background:linear-gradient(135deg,#40d865,#34c759);box-shadow:0 4px 12px #34c75966}.toolbar-buttons button.exit[data-v-3950ec03]{background:linear-gradient(135deg,#ff3b30,#dc3545);box-shadow:0 2px 8px #ff3b304d}.toolbar-buttons button.exit[data-v-3950ec03]:hover{background:linear-gradient(135deg,#ff4d42,#ff3b30);box-shadow:0 4px 12px #ff3b3066}.editor-rotated .editor-toolbar[data-v-3950ec03]{width:80vh}.editor-rotated .editor-toolbar.collapsed[data-v-3950ec03]{width:auto}.editor-container[data-v-229bdcaf]{position:fixed;top:0;left:0;width:var(--visual-viewport-width, 100vw);height:var(--visual-viewport-height, 100vh);overflow:hidden;z-index:10000}.editor-root[data-v-229bdcaf]{position:absolute;top:0;left:0;width:var(--visual-viewport-width, 100vw);height:var(--visual-viewport-height, 100vh);overflow:hidden;touch-action:manipulation}.editor-backdrop[data-v-229bdcaf]{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1;touch-action:manipulation;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.editor-background[data-v-229bdcaf]{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1;pointer-events:none}.editor-grid[data-v-229bdcaf]{position:absolute;top:0;left:0;width:100%;height:100%;z-index:2;background-image:linear-gradient(rgba(255,255,255,.1) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.1) 1px,transparent 1px);background-size:20px 20px}.virtual-control[data-v-229bdcaf]{border:2px solid transparent;transition:border-color .2s ease}.virtual-control.selected[data-v-229bdcaf]{border-color:#007acc;box-shadow:0 0 0 1px #007acc}.virtual-control[data-v-229bdcaf]:hover{border-color:#007acc50}.editor-handle-overlay[data-v-229bdcaf]{position:absolute;top:0;left:0;width:100%;height:100%;background:transparent;cursor:pointer;z-index:10}.alignment-lines[data-v-229bdcaf]{position:absolute;width:100%;height:100%;top:0;left:0;pointer-events:none;z-index:15010;overflow:hidden}.alignment-line[data-v-229bdcaf]{position:absolute;background:#007bff99;opacity:0;transition:opacity .2s ease;pointer-events:none}.alignment-line.horizontal[data-v-229bdcaf]{width:100%;height:1px;left:0}.alignment-line.vertical[data-v-229bdcaf]{height:100%;width:1px;top:0}.alignment-line.show[data-v-229bdcaf]{opacity:1}.editor-root.editor-rotated[data-v-229bdcaf]{transform:rotate(90deg);transform-origin:center center;width:var(--visual-viewport-height, 100vh);height:var(--visual-viewport-width, 100vw);top:calc((var(--visual-viewport-height, 100vh) - var(--visual-viewport-width, 100vw)) / 2);left:calc((var(--visual-viewport-width, 100vw) - var(--visual-viewport-height, 100vh)) / 2)}body.viewport-covered .editor-container[data-v-229bdcaf]{box-sizing:border-box}body.ios-safari-covered .editor-container[data-v-229bdcaf]{padding-bottom:env(safe-area-inset-bottom,0px);padding-top:env(safe-area-inset-top,0px);padding-left:env(safe-area-inset-left,0px);padding-right:env(safe-area-inset-right,0px)}body.viewport-covered[data-v-229bdcaf]:before{content:"⚠️ 检测到视口遮挡";position:fixed;top:10px;right:10px;background:#ffc107e6;color:#000;padding:4px 8px;border-radius:4px;font-size:12px;z-index:99999;pointer-events:none}*,:before,:after{--un-rotate:0;--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-scale-x:1;--un-scale-y:1;--un-scale-z:1;--un-skew-x:0;--un-skew-y:0;--un-translate-x:0;--un-translate-y:0;--un-translate-z:0;--un-pan-x: ;--un-pan-y: ;--un-pinch-zoom: ;--un-scroll-snap-strictness:proximity;--un-ordinal: ;--un-slashed-zero: ;--un-numeric-figure: ;--un-numeric-spacing: ;--un-numeric-fraction: ;--un-border-spacing-x:0;--un-border-spacing-y:0;--un-ring-offset-shadow:0 0 rgb(0 0 0 / 0);--un-ring-shadow:0 0 rgb(0 0 0 / 0);--un-shadow-inset: ;--un-shadow:0 0 rgb(0 0 0 / 0);--un-ring-inset: ;--un-ring-offset-width:0px;--un-ring-offset-color:#fff;--un-ring-width:0px;--un-ring-color:rgb(147 197 253 / .5);--un-blur: ;--un-brightness: ;--un-contrast: ;--un-drop-shadow: ;--un-grayscale: ;--un-hue-rotate: ;--un-invert: ;--un-saturate: ;--un-sepia: ;--un-backdrop-blur: ;--un-backdrop-brightness: ;--un-backdrop-contrast: ;--un-backdrop-grayscale: ;--un-backdrop-hue-rotate: ;--un-backdrop-invert: ;--un-backdrop-opacity: ;--un-backdrop-saturate: ;--un-backdrop-sepia: }::backdrop{--un-rotate:0;--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-scale-x:1;--un-scale-y:1;--un-scale-z:1;--un-skew-x:0;--un-skew-y:0;--un-translate-x:0;--un-translate-y:0;--un-translate-z:0;--un-pan-x: ;--un-pan-y: ;--un-pinch-zoom: ;--un-scroll-snap-strictness:proximity;--un-ordinal: ;--un-slashed-zero: ;--un-numeric-figure: ;--un-numeric-spacing: ;--un-numeric-fraction: ;--un-border-spacing-x:0;--un-border-spacing-y:0;--un-ring-offset-shadow:0 0 rgb(0 0 0 / 0);--un-ring-shadow:0 0 rgb(0 0 0 / 0);--un-shadow-inset: ;--un-shadow:0 0 rgb(0 0 0 / 0);--un-ring-inset: ;--un-ring-offset-width:0px;--un-ring-offset-color:#fff;--un-ring-width:0px;--un-ring-color:rgb(147 197 253 / .5);--un-blur: ;--un-brightness: ;--un-contrast: ;--un-drop-shadow: ;--un-grayscale: ;--un-hue-rotate: ;--un-invert: ;--un-saturate: ;--un-sepia: ;--un-backdrop-blur: ;--un-backdrop-brightness: ;--un-backdrop-contrast: ;--un-backdrop-grayscale: ;--un-backdrop-hue-rotate: ;--un-backdrop-invert: ;--un-backdrop-opacity: ;--un-backdrop-saturate: ;--un-backdrop-sepia: }.container{width:100%}@media (min-width: 640px){.container{max-width:640px}}@media (min-width: 768px){.container{max-width:768px}}@media (min-width: 1024px){.container{max-width:1024px}}@media (min-width: 1280px){.container{max-width:1280px}}@media (min-width: 1536px){.container{max-width:1536px}}.visible{visibility:visible}.absolute,[absolute=""]{position:absolute}.fixed{position:fixed}.relative{position:relative}[bottom~=vh]{bottom:100vh}[right~=vh]{right:100vh}[right~=vw]{right:100vw}.grid{display:grid}.m6{margin:1.5rem}.ms{margin-inline-start:1rem}.block{display:block}.inline-block{display:inline-block}.contents{display:contents}.hidden{display:none}.h4{height:1rem}.h5{height:1.25rem}.flex{display:flex}.flex-shrink{flex-shrink:1}.flex-grow{flex-grow:1}.flex-wrap{flex-wrap:wrap}.transform{transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.resize{resize:both}.break-all{word-break:break-all}.b,.border{border-width:1px}[stroke-width~="1.5"]{stroke-width:1.5px}[stroke-width~="2"]{stroke-width:2px}[stroke~=white]{--un-stroke-opacity:1;stroke:rgb(255 255 255 / var(--un-stroke-opacity))}.px,[px=""]{padding-left:1rem;padding-right:1rem}.tab{-moz-tab-size:4;-o-tab-size:4;tab-size:4}.text-shadow{--un-text-shadow:0 0 1px var(--un-text-shadow-color, rgb(0 0 0 / .2)),0 0 1px var(--un-text-shadow-color, rgb(1 0 5 / .1));text-shadow:var(--un-text-shadow)}.outline{outline-style:solid}[blur~="-1"]{--un-blur:blur(-1px);filter:var(--un-blur) var(--un-brightness) var(--un-contrast) var(--un-drop-shadow) var(--un-grayscale) var(--un-hue-rotate) var(--un-invert) var(--un-saturate) var(--un-sepia)}.backdrop-filter{-webkit-backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia);backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.ease{transition-timing-function:cubic-bezier(.4,0,.2,1)}[placeholder~="#FFFFFFFF"]::placeholder{--un-placeholder-opacity:1;color:rgb(255 255 255 / var(--un-placeholder-opacity))}.prop-image[data-v-f7ed2744]{display:flex;flex-direction:column;gap:6px}.prop-image-head[data-v-f7ed2744]{display:flex;align-items:center;justify-content:space-between;gap:10px}label[data-v-f7ed2744]{font-size:12px;color:#ffffffb3;font-weight:500;letter-spacing:.3px}.thumb[data-v-f7ed2744]{width:28px;height:28px;border-radius:4px;border:1px solid rgba(255,255,255,.15);background-size:contain;background-position:center;background-repeat:no-repeat;background-color:#00000040;flex-shrink:0}.prop-image-body[data-v-f7ed2744]{display:flex;align-items:center;gap:6px}.url-input[data-v-f7ed2744]{flex:1;min-width:0;background:#3a3a3c99;border:1px solid rgba(255,255,255,.12);color:#f5f5f7;border-radius:6px;padding:6px 10px;font-size:12px;outline:none;transition:all .2s ease}.url-input[data-v-f7ed2744]:hover{background:#3a3a3ccc;border-color:#fff3}.url-input[data-v-f7ed2744]:focus{background:#3a3a3ce6;border-color:#007aff;box-shadow:0 0 0 2px #007aff26}.url-input[data-v-f7ed2744]::placeholder{color:#ffffff4d}.clear-btn[data-v-f7ed2744]{background:#ff3b3026;color:#ff6961;border:1px solid rgba(255,59,48,.3);border-radius:6px;width:28px;height:28px;font-size:16px;line-height:1;cursor:pointer;flex-shrink:0}.clear-btn[data-v-f7ed2744]:hover{background:#ff3b3040}.prop-group[data-v-b9804240]{display:flex;align-items:center;justify-content:space-between;gap:10px}label[data-v-b9804240]{font-size:12px;color:#ffffffb3;flex-shrink:0;font-weight:500;letter-spacing:.3px;min-width:75px}.color-wrapper[data-v-b9804240]{flex:1;min-width:0;display:flex;align-items:center;gap:6px}.color-swatch[data-v-b9804240]{width:28px;height:28px;padding:0;border:1px solid rgba(255,255,255,.12);border-radius:6px;background:transparent;cursor:pointer;flex-shrink:0}.color-text[data-v-b9804240]{flex:1;min-width:0;background:#3a3a3c99;border:1px solid rgba(255,255,255,.12);color:#f5f5f7;border-radius:6px;padding:6px 10px;font-size:12px;outline:none;transition:all .2s ease}.color-text[data-v-b9804240]:hover{background:#3a3a3ccc;border-color:#fff3}.color-text[data-v-b9804240]:focus{background:#3a3a3ce6;border-color:#007aff;box-shadow:0 0 0 2px #007aff26}.color-text[data-v-b9804240]::placeholder{color:#ffffff4d}.alpha-slider[data-v-b9804240]{width:60px;flex-shrink:0;cursor:pointer}.props-container[data-v-71195375]{display:flex;flex-direction:column;gap:12px;padding:2px 0}.props-container[data-v-71195375]>*{position:relative}.props-container[data-v-71195375]>*:not(:last-child):after{content:"";position:absolute;bottom:-6px;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.08) 20%,rgba(255,255,255,.08) 80%,transparent 100%)}.prop-group>label[data-v-7c4cd0a4]{width:100%;border-top:1px solid #555;padding-top:10px;margin-top:10px;display:block;font-size:12px;color:#ffffffb3;font-weight:500}.props-container[data-v-70db06a8]{display:flex;flex-direction:column;gap:12px;padding:2px 0}.prop-group[data-v-70db06a8]{margin-top:15px;padding-top:15px;border-top:1px solid rgba(255,255,255,.1)}.prop-group h5[data-v-70db06a8]{margin:0 0 10px;font-size:14px;color:#f5f5f7;font-weight:500}.props-container[data-v-013212cb]{display:flex;flex-direction:column;gap:12px;padding:2px 0}.props-container[data-v-013212cb]>*{position:relative}.props-container[data-v-013212cb]>*:not(:last-child):after{content:"";position:absolute;bottom:-6px;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.08) 20%,rgba(255,255,255,.08) 80%,transparent 100%)}.prop-group>label[data-v-10367c2f]{width:100%;border-top:1px solid #555;padding-top:10px;margin-top:10px;display:block;font-size:12px;color:#ffffffb3;font-weight:500}.props-radial[data-v-1e6042dc]{display:flex;flex-direction:column;gap:8px}.section-title[data-v-1e6042dc]{font-size:12px;color:#aaa;margin-top:8px;padding-bottom:4px;border-bottom:1px solid #444}.button-list[data-v-1e6042dc]{display:flex;flex-direction:column;gap:6px}.button-item[data-v-1e6042dc]{background:#ffffff0d;border-radius:6px;padding:6px 8px}.button-item-header[data-v-1e6042dc]{display:flex;align-items:center;gap:6px}.button-item-actions[data-v-1e6042dc]{margin-top:4px;padding-left:26px}.button-desc-input[data-v-1e6042dc]{width:60px;background:#ffffff1a;border:1px solid #555;border-radius:4px;color:#fff;padding:2px 6px;font-size:12px;text-align:center;cursor:pointer;caret-color:transparent;box-sizing:border-box}.button-desc-input.key-listening[data-v-1e6042dc]{border-color:#007affcc;box-shadow:0 0 4px #007aff66}.button-desc-input[data-v-1e6042dc]:focus::placeholder{color:#6cf}.button-desc-input[data-v-1e6042dc]::placeholder{color:#666}.button-index[data-v-1e6042dc]{font-size:11px;color:#888;min-width:20px}.button-label-input[data-v-1e6042dc]{flex:1;background:#ffffff0f;border:1px solid #444;border-radius:4px;color:#ccc;padding:2px 6px;font-size:12px;min-width:0;box-sizing:border-box}.button-label-input[data-v-1e6042dc]::placeholder{color:#666}.btn-set-key[data-v-1e6042dc]{background:#007aff26;border:1px solid rgba(0,122,255,.4);border-radius:4px;color:#6cf;padding:2px 8px;font-size:11px;cursor:pointer;white-space:nowrap;max-width:80px;overflow:hidden;text-overflow:ellipsis}.btn-set-key[data-v-1e6042dc]:hover{background:#007aff40}.btn-remove[data-v-1e6042dc]{background:none;border:none;color:#f66;font-size:16px;cursor:pointer;padding:0 4px;line-height:1}.btn-remove[data-v-1e6042dc]:disabled{color:#555;cursor:not-allowed}.btn-add-button[data-v-1e6042dc]{background:#007aff33;border:1px dashed rgba(0,122,255,.5);border-radius:6px;color:#6cf;padding:6px;cursor:pointer;font-size:12px}.btn-add-button[data-v-1e6042dc]:hover{background:#007aff4d}.props-container[data-v-b4adadad]{display:flex;flex-direction:column;gap:12px;padding:2px 0}.child-section[data-v-b4adadad]{margin-top:8px}.child-header[data-v-b4adadad]{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.child-title[data-v-b4adadad]{font-size:13px;font-weight:600;color:#f5f5f7}.add-child-btn[data-v-b4adadad]{background:#007affcc;color:#fff;border:none;border-radius:4px;padding:4px 10px;font-size:12px;cursor:pointer}.add-child-btn[data-v-b4adadad]:hover{background:#007aff}.child-list[data-v-b4adadad]{display:flex;flex-direction:column;gap:6px}.child-row[data-v-b4adadad]{display:flex;align-items:center;gap:6px;background:#ffffff0d;border-radius:6px;padding:6px 8px}.child-index[data-v-b4adadad]{font-size:11px;color:#888;min-width:20px}.child-label-input[data-v-b4adadad]{flex:1;background:#ffffff0f;border:1px solid #444;border-radius:4px;color:#ccc;padding:3px 6px;font-size:12px;min-width:0;box-sizing:border-box}.child-label-input[data-v-b4adadad]::placeholder{color:#666}.child-tips-input[data-v-b4adadad]{width:52px;background:#ffffff14;border:1px solid #555;border-radius:4px;color:#fff;padding:3px 6px;font-size:12px;text-align:center;box-sizing:border-box;outline:none}.child-tips-input.key-listening[data-v-b4adadad]{border-color:#007affcc;box-shadow:0 0 4px #007aff66}.child-tips-input[data-v-b4adadad]:focus::placeholder{color:#6cf}.child-tips-input[data-v-b4adadad]::placeholder{color:#666}.child-code-tag[data-v-b4adadad]{font-size:11px;color:#6cf;background:#66ccff1a;border-radius:3px;padding:2px 5px;white-space:nowrap;-webkit-user-select:none;user-select:none;min-width:30px;text-align:center}.btn-remove[data-v-b4adadad]{background:none;border:none;color:#f66;font-size:16px;cursor:pointer;padding:0 4px;line-height:1}.btn-remove[data-v-b4adadad]:hover{color:#f33}.virtual-control-button[data-v-30fa2a3b]{display:flex;align-items:center;justify-content:center;color:#fff;text-shadow:1px 1px 2px black;position:relative}.control-label-tips[data-v-30fa2a3b]{position:absolute;top:-8px;right:-8px;font-size:10px;font-weight:600;background:#3c3c43f2;color:#fff;padding:4px 8px;border-radius:6px;white-space:nowrap;box-shadow:0 2px 8px #0000004d;line-height:1;z-index:10;pointer-events:none}.control-label-tips-br[data-v-30fa2a3b]{position:absolute;bottom:-8px;right:-8px;font-size:10px;font-weight:600;background:#3c3c43f2;color:#fff;padding:4px 8px;border-radius:6px;white-space:nowrap;box-shadow:0 2px 8px #0000004d;line-height:1;z-index:10;pointer-events:none}.button-content[data-v-30fa2a3b]{display:flex;align-items:center;justify-content:center;max-width:90%}.control-label[data-v-30fa2a3b]{font-size:13px;font-weight:600;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;letter-spacing:.3px}.circular[data-v-30fa2a3b]{border-radius:50%}.ellipse[data-v-30fa2a3b]{border-radius:20px}.rounded-rectangle[data-v-30fa2a3b]{border-radius:12px}.rectangle[data-v-30fa2a3b]{border-radius:4px}.gamepad-stick[data-v-148877c9]{position:relative;width:100%;height:100%}.stick-wrapper[data-v-148877c9]{position:absolute;top:0;left:0;width:100%;height:100%}.stick-touch-area[data-v-148877c9]{position:absolute;top:0;left:0;width:100%;height:100%;border-radius:50%}.stick-ball[data-v-148877c9]{position:absolute;width:40%;height:40%;top:50%;left:50%;transform:translate(-50%,-50%);border-radius:50%;display:flex;align-items:center;justify-content:center}.stick-ball-center-label[data-v-148877c9],.stick-label[data-v-148877c9]{color:#fff;font-weight:700;font-size:1.5rem;text-shadow:1px 1px 2px black}.stick-label[data-v-148877c9]{position:absolute;top:-20px;left:50%;transform:translate(-50%)}.radial-label[data-v-e464388e]{color:#fff;font-size:12px;font-weight:500;text-shadow:1px 1px 2px rgba(0,0,0,.5)}.virtual-control-slider[data-v-8b4d7843]{width:100%;height:100%;border-radius:var(--radius-base, 16px);padding:4px;background:var(--bg-gradient, #3a3a3c);border:var(--border-width, 1px) solid var(--border-color-base, #888)}.virtual-control-slider[style*=background-image][data-v-8b4d7843]{border:none!important}.slider-track[data-v-8b4d7843]{position:relative;width:100%;height:100%;border-radius:12px;background:var(--bg-dark, rgba(30,30,30,.6))}.slider-thumb[data-v-8b4d7843]{position:absolute;box-sizing:border-box;border-radius:12px;background:var(--primary-color, #0a84ff);border:var(--border-width, 1px) solid var(--border-color-highlight, #fff);cursor:pointer;box-shadow:var(--shadow-base, 0 2px 5px rgba(0,0,0,.3))}.virtual-control-slider[style*=background-image] .slider-thumb[data-v-8b4d7843]{border:none!important}.virtual-control-d-pad[data-v-9b31589e]{width:100%;height:100%;border-radius:50%;background:var(--bg-radial-gradient, #3a3a3c);position:relative;overflow:hidden;border:var(--border-width-thick, 2px) solid var(--border-color-base, #888)}.virtual-control-d-pad[style*=background-image][data-v-9b31589e]{border:none!important}.d-pad-sector[data-v-9b31589e]{position:absolute;top:0;left:0;width:100%;height:100%;transform-origin:center center;clip-path:polygon(50% 50%,100% 20.7%,100% 79.3%);pointer-events:none;background:var(--primary-color, #0a84ff);opacity:0;transition:var(--transition-fast, all .1s ease)}.sector-0[data-v-9b31589e]{transform:rotate(0)}.sector-1[data-v-9b31589e]{transform:rotate(45deg)}.sector-2[data-v-9b31589e]{transform:rotate(90deg)}.sector-3[data-v-9b31589e]{transform:rotate(135deg)}.sector-4[data-v-9b31589e]{transform:rotate(180deg)}.sector-5[data-v-9b31589e]{transform:rotate(225deg)}.sector-6[data-v-9b31589e]{transform:rotate(270deg)}.sector-7[data-v-9b31589e]{transform:rotate(315deg)}.d-pad-center[data-v-9b31589e]{position:absolute;top:50%;left:50%;width:30%;height:30%;border-radius:50%;background:var(--bg-radial-gradient, #3a3a3c);border:var(--border-width, 1px) solid var(--border-color-base, #888);transform:translate(-50%,-50%);z-index:20}.virtual-control-d-pad[style*=background-image] .d-pad-center[data-v-9b31589e]{background:transparent!important;border:none!important}.d-pad-direction-label[data-v-9b31589e]{position:absolute;color:var(--text-color-secondary, #ccc);font-size:var(--font-size-tiny, 10px);pointer-events:none;background:var(--bg-overlay, rgba(0,0,0,.6));padding:1px 4px;border-radius:var(--radius-small, 3px);z-index:10}.up[data-v-9b31589e]{top:8%;left:50%;transform:translate(-50%)}.down[data-v-9b31589e]{bottom:8%;left:50%;transform:translate(-50%)}.left[data-v-9b31589e]{left:8%;top:50%;transform:translateY(-50%)}.right[data-v-9b31589e]{right:8%;top:50%;transform:translateY(-50%)}.up-left[data-v-9b31589e]{top:22%;left:22%;transform:translate(-50%,-50%)}.up-right[data-v-9b31589e]{top:22%;right:22%;transform:translate(50%,-50%)}.down-left[data-v-9b31589e]{bottom:22%;left:22%;transform:translate(-50%,50%)}.down-right[data-v-9b31589e]{bottom:22%;right:22%;transform:translate(50%,50%)}.virtual-control-cross-pad[data-v-15378a8f]{width:100%;height:100%;position:relative;background:transparent;border:none}.cross-pad-button[data-v-15378a8f]{position:absolute;background:#3a3a3c;border:var(--border-width, 1px) solid var(--border-color-base, #888);display:flex;align-items:center;justify-content:center;color:var(--text-color-secondary, #ccc);font-weight:700;font-size:20px;cursor:pointer;z-index:1}.cross-pad-button.up[data-v-15378a8f]{top:0%;left:50%;width:30%;height:35%;transform:translate(-50%);border-radius:16px 16px 0 0}.cross-pad-button.down[data-v-15378a8f]{bottom:0%;left:50%;width:30%;height:35%;transform:translate(-50%);border-radius:0 0 16px 16px}.cross-pad-button.left[data-v-15378a8f]{left:0%;top:50%;width:35%;height:30%;transform:translateY(-50%);border-radius:16px 0 0 16px}.cross-pad-button.right[data-v-15378a8f]{right:0%;top:50%;width:35%;height:30%;transform:translateY(-50%);border-radius:0 16px 16px 0}.cross-pad-center[data-v-15378a8f]{position:absolute;top:50%;left:50%;width:31%;height:31%;background:#3a3a3c;transform:translate(-50%,-50%);pointer-events:none;z-index:3}.cross-pad-image-mode .cross-pad-button[data-v-15378a8f],.cross-pad-image-mode .cross-pad-center[data-v-15378a8f]{display:none}.cross-pad-touch-area[data-v-15378a8f]{position:absolute;top:0;left:0;width:100%;height:100%;background:transparent}.virtual-control-cross-pad[style*=background-image] .cross-pad-button[data-v-15378a8f],.virtual-control-cross-pad[style*=background-image] .cross-pad-center[data-v-15378a8f]{background:transparent;border:none}.virtual-control-gamepad_dpad[data-v-b7b4ff6f]{width:100%;height:100%;background:transparent;border:none;position:relative}.gamepad-dpad-button[data-v-b7b4ff6f]{position:absolute;background:var(--bg-gradient, #3a3a3c);border:none;color:var(--text-color-secondary, #ccc);font-size:var(--font-size-base, 16px);display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:10}.gamepad-dpad-button.up[data-v-b7b4ff6f]{top:0%;left:50%;width:30%;height:35%;transform:translate(-50%);border-radius:16px 16px 0 0}.gamepad-dpad-button.down[data-v-b7b4ff6f]{bottom:0%;left:50%;width:30%;height:35%;transform:translate(-50%);border-radius:0 0 16px 16px}.gamepad-dpad-button.left[data-v-b7b4ff6f]{left:0%;top:50%;width:35%;height:30%;transform:translateY(-50%);border-radius:16px 0 0 16px}.gamepad-dpad-button.right[data-v-b7b4ff6f]{right:0%;top:50%;width:35%;height:30%;transform:translateY(-50%);border-radius:0 16px 16px 0}.gamepad-dpad-center[data-v-b7b4ff6f]{position:absolute;top:50%;left:50%;width:30%;height:30%;background:transparent;transform:translate(-50%,-50%);pointer-events:none;z-index:1}.gamepad-dpad-label[data-v-b7b4ff6f],.gamepad-dpad-image-mode .gamepad-dpad-button[data-v-b7b4ff6f],.gamepad-dpad-image-mode .gamepad-dpad-center[data-v-b7b4ff6f]{display:none}.gamepad-dpad-touch-area[data-v-b7b4ff6f]{position:absolute;top:0;left:0;width:100%;height:100%;background:transparent}.virtual-control-gamepad_dpad[style*=background-image] .gamepad-dpad-button[data-v-b7b4ff6f],.virtual-control-gamepad_dpad[style*=background-image] .gamepad-dpad-center[data-v-b7b4ff6f]{background:transparent}.virtual-control-joystick[data-v-4c6da55f]{display:flex;align-items:center;justify-content:center;flex-direction:column;color:#fff;text-shadow:1px 1px 2px black}.joystick-zone[data-v-4c6da55f],.joystick-stick[data-v-4c6da55f]{border-radius:50%}.joystick-label[data-v-4c6da55f]{position:absolute;bottom:-20px;font-size:12px;text-align:center;width:100%}.virtual-control-mouse-click[data-v-8dcae346]{display:flex;align-items:center;justify-content:center;color:#fff;text-shadow:1px 1px 2px black}.circular[data-v-8dcae346]{border-radius:50%}.virtual-control-container[data-v-f19898e1]{color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.5)}.folded-content[data-v-f19898e1]{width:100%;height:100%;display:flex;align-items:center;justify-content:center;position:relative;border-radius:10px;background:#ffffff14;border:1px solid rgba(255,255,255,.15)}.folded-arrow[data-v-f19898e1]{font-size:24px;color:#ffffffb3;line-height:1}.folded-label[data-v-f19898e1]{font-size:10px;color:#fff9;position:absolute;bottom:3px;left:50%;transform:translate(-50%);white-space:nowrap}.expanded-content[data-v-f19898e1]{display:flex;flex-direction:row;align-items:stretch;gap:4px;height:100%}.collapse-cell[data-v-f19898e1]{min-width:28px;display:flex;align-items:center;justify-content:center;font-size:20px;color:#fff9;flex-shrink:0;border-radius:8px;background:#0006;border:1px solid rgba(255,255,255,.15)}.child-cell[data-v-f19898e1]{border-radius:8px;background:#0006;border:1px solid rgba(255,255,255,.15);color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.5)}.child-tips[data-v-f19898e1]{position:absolute;top:-7px;right:-7px;font-size:10px;font-weight:600;background:#323237e6;color:#c8c46a;padding:1px 5px;border-radius:4px;white-space:nowrap;line-height:1.2;z-index:10;pointer-events:none}.child-tips-br[data-v-f19898e1]{position:absolute;bottom:-7px;right:-7px;font-size:10px;font-weight:600;background:#323237e6;color:#c8c46a;padding:1px 5px;border-radius:4px;white-space:nowrap;line-height:1.2;z-index:10;pointer-events:none}.child-label[data-v-f19898e1]{font-size:12px;font-weight:500;text-align:center}
