*,:before,:after{box-sizing:border-box}html,body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;width:100%;height:100%;margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;overflow:hidden}#root{flex-direction:column;width:100%;height:100%;margin:0;padding:0;display:flex}button,input,select,textarea{font-family:inherit}.app-toolbar{-webkit-user-select:none;user-select:none;border-bottom:1px solid var(--border-color,#313244);z-index:20;flex-shrink:0;align-items:center;gap:8px;height:48px;padding:0 12px;display:flex}.app-toolbar.dark{color:#cdd6f4;background:#181825}.app-toolbar.light{color:#4c4f69;background:#dce0e8}.toolbar-brand{align-items:center;gap:10px;padding-right:6px;display:flex}.brand-logo{object-fit:cover;border-radius:6px;width:28px;height:28px;box-shadow:0 2px 6px #00000040}.brand-logo-fallback{color:#fff;background:linear-gradient(135deg,#00a2ff,#7f00ff);border-radius:6px;justify-content:center;align-items:center;width:28px;height:28px;font-size:14px;display:flex}.brand-info{flex-direction:column;display:flex}.brand-title{letter-spacing:.8px;font-size:12px;font-weight:800;line-height:1.1}.brand-sub{opacity:.55;letter-spacing:.4px;font-size:9px}.toolbar-divider{background:var(--border-color,#313244);width:1px;height:20px;margin:0 2px}.app-toolbar.light .toolbar-divider{background:#ccd0da}.toolbar-section{align-items:center;gap:4px;display:flex}.toolbar-spacer{flex:1}.toolbar-btn{color:inherit;cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #0000;border-radius:5px;align-items:center;gap:6px;padding:6px 10px;font-size:12px;font-weight:500;transition:all .14s;display:inline-flex}.toolbar-btn:hover{background:#ffffff14}.app-toolbar.light .toolbar-btn:hover{background:#0000000f}.toolbar-btn.active{color:#89b4fa;background:#313244;border-color:#45475a}.app-toolbar.light .toolbar-btn.active{color:#1e66f5;background:#ccd0da;border-color:#bcc0cc}.btn-run{background:#a6e3a1;padding:6px 14px;font-weight:700;color:#11111b!important}.btn-run:hover{background:#94e2d5}.app-toolbar.light .btn-run{background:#40a02b;color:#fff!important}.app-toolbar.light .btn-run:hover{background:#2b7a1e}.btn-stop{background:#f38ba8;padding:6px 14px;font-weight:700;animation:1.5s infinite pulse;color:#11111b!important}@keyframes pulse{0%{opacity:1}50%{opacity:.75}to{opacity:1}}.btn-stop:hover{background:#eba0ac}.app-toolbar.light .btn-stop{background:#d20f39;color:#fff!important}.theme-toggle{color:#f9e2af}.app-toolbar.light .theme-toggle{color:#df8e1d}.btn-delete-script:hover{color:#f38ba8!important;border-color:#f38ba866!important}.app-toolbar.light .btn-delete-script:hover{color:#d20f39!important;border-color:#d20f3966!important}.btn-ai-agent{background:linear-gradient(135deg,#cba6f740,#89b4fa40);border:1px solid #cba6f766;font-weight:600;transition:all .15s;box-shadow:0 0 10px #cba6f726;color:#cba6f7!important}.btn-ai-agent:hover{background:linear-gradient(135deg,#cba6f766,#89b4fa66);border-color:#cba6f7;transform:translateY(-1px)}.app-toolbar.light .btn-ai-agent{background:linear-gradient(135deg,#8839ef26,#1e66f526);border-color:#8839ef59;color:#8839ef!important}@media (width<=768px){.app-toolbar{gap:4px;height:44px;padding:0 8px}.brand-sub{display:none}.brand-title{font-size:11px}.btn-text{display:none}.toolbar-btn{padding:6px 8px;font-size:13px}.toolbar-divider{margin:0 1px}}.script-tab-bar{border-bottom:1px solid var(--border-color,#313244);-webkit-user-select:none;user-select:none;flex-shrink:0;align-items:center;height:38px;display:flex;overflow:hidden}.script-tab-bar.dark{background:#11111b}.script-tab-bar.light{background:#e6e9ef}.tab-scroll-container{scrollbar-width:thin;align-items:center;gap:2px;height:100%;padding:0 4px;display:flex;overflow:auto hidden}.tab-scroll-container::-webkit-scrollbar{height:2px}.tab-scroll-container::-webkit-scrollbar-thumb{background:#ffffff26}.script-tab{cursor:pointer;height:32px;color:inherit;opacity:.65;white-space:nowrap;border:1px solid #0000;border-bottom:none;border-radius:6px 6px 0 0;align-items:center;gap:7px;padding:0 12px;font-size:12px;font-weight:500;transition:all .12s;display:flex}.script-tab:hover{opacity:.9}.script-tab-bar.dark .script-tab:hover{background:#ffffff0a}.script-tab-bar.light .script-tab:hover{background:#0000000a}.script-tab.active{opacity:1;font-weight:600}.script-tab-bar.dark .script-tab.active{color:#cdd6f4;background:#1e1e2e;border-color:#313244}.script-tab-bar.light .script-tab.active{color:#4c4f69;background:#eff1f5;border-color:#ccd0da}.script-tab.type-Script .tab-icon{color:#89b4fa}.script-tab.type-ServerScript .tab-icon{color:#a6e3a1}.script-tab.type-LocalScript .tab-icon{color:#f9e2af}.script-tab.type-ModuleScript .tab-icon{color:#cba6f7}.tab-name{text-overflow:ellipsis;max-width:130px;overflow:hidden}.tab-type-badge{opacity:.65;letter-spacing:.3px;background:#ffffff14;border-radius:4px;padding:1px 5px;font-size:9px;font-weight:500}.script-tab-bar.light .tab-type-badge{background:#0000000f}.tab-actions{align-items:center;gap:3px;margin-left:4px;display:flex}.tab-action-btn{cursor:pointer;min-width:18px;min-height:18px;color:inherit;opacity:.55;background:0 0;border:none;border-radius:3px;justify-content:center;align-items:center;padding:3px 5px;font-size:11px;transition:all .15s;display:inline-flex}.script-tab.active .tab-action-btn{opacity:.8}.tab-action-btn:hover{opacity:1;background:#ffffff14}.script-tab-bar.light .tab-action-btn:hover{background:#00000014}.btn-delete:hover{color:#f38ba8!important}.script-tab-bar.light .btn-delete:hover{color:#d20f39!important}.new-tab-btn{cursor:pointer;color:inherit;opacity:.6;background:0 0;border:none;border-radius:4px;padding:6px 10px;font-size:11px;transition:all .15s}.new-tab-btn:hover{opacity:1;background:#ffffff0f}.script-tab-bar.light .new-tab-btn:hover{background:#0000000f}@media (width<=768px){.script-tab-bar{height:34px}.script-tab{height:30px;padding:0 8px;font-size:11px}.tab-type-badge{display:none}}.custom-dialog-backdrop{z-index:100000;-webkit-backdrop-filter:blur(6px);background-color:#000000a6;justify-content:center;align-items:center;padding:1rem;animation:.18s cubic-bezier(.16,1,.3,1) forwards dialogFadeIn;display:flex;position:fixed;inset:0}@keyframes dialogFadeIn{0%{opacity:0}to{opacity:1}}.custom-dialog-card{color:#cdd6f4;background-color:#1e1e2e;border:1px solid #313244;border-radius:14px;flex-direction:column;gap:1.25rem;width:100%;max-width:440px;padding:1.5rem;animation:.2s cubic-bezier(.16,1,.3,1) forwards dialogScaleUp;display:flex;transform:scale(.96);box-shadow:0 20px 45px #0000008c,0 0 1px #ffffff1a}.custom-dialog-card.light{color:#4c4f69;background-color:#eff1f5;border-color:#ccd0da;box-shadow:0 20px 40px #0000002e}@keyframes dialogScaleUp{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}.custom-dialog-header{align-items:flex-start;gap:1rem;display:flex}.custom-dialog-icon-badge{border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-size:1.25rem;display:flex}.custom-dialog-icon-badge.danger{color:#f38ba8;background-color:#f38ba826;border:1px solid #f38ba84d}.custom-dialog-icon-badge.warning{color:#fab387;background-color:#fab38726;border:1px solid #fab3874d}.custom-dialog-icon-badge.info{color:#89b4fa;background-color:#89b4fa26;border:1px solid #89b4fa4d}.custom-dialog-icon-badge.success{color:#a6e3a1;background-color:#a6e3a126;border:1px solid #a6e3a14d}.custom-dialog-title-group{flex:1}.custom-dialog-title{color:#cdd6f4;margin:0 0 .35rem;font-size:1.15rem;font-weight:700}.custom-dialog-card.light .custom-dialog-title{color:#4c4f69}.custom-dialog-message{color:#a6adc8;white-space:pre-wrap;word-break:break-word;margin:0;font-size:.925rem;line-height:1.5}.custom-dialog-card.light .custom-dialog-message{color:#6c6f85}.custom-dialog-footer{justify-content:flex-end;gap:.75rem;margin-top:.25rem;display:flex}.custom-dialog-btn{cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;gap:.4rem;padding:.55rem 1.15rem;font-size:.9rem;font-weight:600;transition:all .15s;display:inline-flex}.custom-dialog-btn-cancel{color:#cdd6f4;background-color:#313244}.custom-dialog-card.light .custom-dialog-btn-cancel{color:#4c4f69;background-color:#dce0e8}.custom-dialog-btn-cancel:hover{background-color:#45475a}.custom-dialog-card.light .custom-dialog-btn-cancel:hover{background-color:#ccd0da}.custom-dialog-btn-confirm{color:#11111b;background:linear-gradient(135deg,#89b4fa,#b4befe)}.custom-dialog-btn-confirm:hover{filter:brightness(1.1);transform:translateY(-1px)}.custom-dialog-btn-danger{color:#11111b;background:linear-gradient(135deg,#f38ba8,#eba0ac)}.custom-dialog-btn-danger:hover{filter:brightness(1.1);transform:translateY(-1px);box-shadow:0 4px 12px #f38ba859}.code-editor-wrapper{flex-direction:column;flex:1;height:100%;transition:box-shadow .3s,border-color .3s;display:flex;position:relative;overflow:hidden}.code-editor-wrapper.dark{background-color:#1e1e2e}.code-editor-wrapper.light{background-color:#eff1f5}.code-editor-wrapper.is-running{box-shadow:inset 0 0 16px #89b4fa2e,0 0 10px #89b4fa40}.running-shimmer-bar{z-index:20;background:linear-gradient(90deg,#89b4fa 0%,#cba6f7 25%,#f5c2e7 50%,#89dceb 75%,#89b4fa 100%) 0 0/200% 100%;width:100%;height:3px;animation:1.2s linear infinite shimmer-beam;position:absolute;top:0;left:0;box-shadow:0 0 10px #89b4facc,0 0 20px #cba6f780}@keyframes shimmer-beam{0%{background-position:100% 0}to{background-position:-100% 0}}.code-editor-container{flex:1;position:relative;overflow:hidden}.code-editor-wrapper.dark .code-editor-container,.code-editor-wrapper.dark .monaco-editor,.code-editor-wrapper.dark .monaco-editor-background,.code-editor-wrapper.dark .monaco-editor .margin,.code-editor-wrapper.dark .monaco-editor .overflow-guard{background-color:#1e1e2e!important}.code-editor-wrapper.dark .monaco-editor .view-overlays,.code-editor-wrapper.dark .monaco-editor .view-lines{background-color:#0000!important}.code-editor-wrapper.light .code-editor-container,.code-editor-wrapper.light .monaco-editor,.code-editor-wrapper.light .monaco-editor-background,.code-editor-wrapper.light .monaco-editor .margin,.code-editor-wrapper.light .monaco-editor .overflow-guard{background-color:#eff1f5!important}.code-editor-wrapper.light .monaco-editor .view-overlays,.code-editor-wrapper.light .monaco-editor .view-lines{background-color:#0000!important}.code-editor-container .cm-editor{outline:none;height:100%}.code-editor-container .cm-scroller{-webkit-overflow-scrolling:touch;font-family:JetBrains Mono,Fira Code,Cascadia Code,Consolas,monospace;line-height:1.6;overflow:auto}.cm-cursor{animation:1.05s ease-in-out infinite cursor-breathe}@keyframes cursor-breathe{0%,to{opacity:1;filter:drop-shadow(0 0 4px #89b4facc)}50%{opacity:.35;filter:drop-shadow(0 0 1px #89b4fa4d)}}.cm-color-swatch-widget{vertical-align:-1px;cursor:pointer;border-radius:3px;width:12px;height:12px;margin:0 4px;transition:transform .15s,box-shadow .15s;display:inline-block}.cm-color-swatch-widget:hover{transform:scale(1.35);box-shadow:0 0 8px #fff9}.cm-roblox-end{text-shadow:0 0 8px #cba6f773;color:#cba6f7!important;font-weight:700!important}.code-editor-wrapper.light .cm-roblox-end{text-shadow:none;color:#8839ef!important}.cm-roblox-keyword{color:#cba6f7!important;font-weight:700!important}.code-editor-wrapper.light .cm-roblox-keyword{color:#8839ef!important}.cm-roblox-doc-tooltip{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);-webkit-user-select:text;user-select:text;border-radius:8px;max-width:380px;padding:10px 14px;font-size:12px;line-height:1.5;animation:.16s ease-out tooltip-fade;box-shadow:0 12px 32px #00000073}@keyframes tooltip-fade{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.cm-tooltip{overflow:hidden;border-radius:8px!important}.doc-header{border-bottom:1px solid #ffffff1a;justify-content:space-between;align-items:center;gap:8px;margin-bottom:6px;padding-bottom:5px;display:flex}.doc-title{letter-spacing:.3px;color:#cdd6f4;font-size:13px;font-weight:700}.doc-badge{letter-spacing:.5px;text-transform:uppercase;border-radius:4px;padding:1px 6px;font-size:9px;font-weight:800}.badge-service{color:#89dceb;background:#89dceb33;border:1px solid #89dceb66}.badge-class{color:#f9e2af;background:#f9e2af33;border:1px solid #f9e2af66}.badge-method{color:#89b4fa;background:#89b4fa33;border:1px solid #89b4fa66}.badge-function{color:#cba6f7;background:#cba6f733;border:1px solid #cba6f766}.badge-datatype{color:#f5c2e7;background:#f5c2e733;border:1px solid #f5c2e766}.doc-signature{color:#a6e3a1;background:#00000040;border:1px solid #ffffff0f;border-radius:4px;margin-bottom:6px;padding:4px 8px;font-family:JetBrains Mono,monospace;font-size:11px}.doc-summary{color:#cdd6f4;margin-bottom:6px;font-size:11.5px}.doc-example{color:#f9e2af;background:#ffffff0a;border-left:2px solid #fab387;border-radius:4px;padding:4px 8px;font-size:11px}.example-label{opacity:.7;text-transform:uppercase;margin-right:4px;font-size:10px;font-weight:700}.light .cm-roblox-doc-tooltip{box-shadow:0 10px 24px #00000026}.light .doc-title{color:#4c4f69}.light .doc-signature{color:#40a02b;background:#0000000d}.light .doc-summary{color:#5c5f77}.light .doc-example{color:#df8e1d;background:#00000008;border-left-color:#fe640b}.editor-status-bar{-webkit-user-select:none;user-select:none;border-top:1px solid var(--border-color,#313244);flex-shrink:0;justify-content:space-between;align-items:center;gap:8px;height:25px;padding:0 10px;font-size:11px;display:flex}.editor-status-bar.dark{color:#a6adc8;background:#181825}.editor-status-bar.light{color:#6c6f85;background:#e6e9ef;border-top-color:#ccd0da}.status-group{align-items:center;gap:8px;display:flex;overflow:hidden}.status-item{white-space:nowrap;align-items:center;gap:5px;display:inline-flex}.status-sep{opacity:.35;font-size:9px}.status-match-pill{background:#89b4fa29;border:1px solid #89b4fa59;border-radius:10px;padding:1px 7px;font-size:10.5px;animation:.2s cubic-bezier(.175,.885,.32,1.275) pill-pop;color:#89b4fa!important}@keyframes pill-pop{0%{opacity:.6;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.match-icon{font-size:9px}.match-count{font-weight:600}.match-word{opacity:.85}.status-type-badge{letter-spacing:.2px;border-radius:4px;padding:1px 6px;font-size:10px;font-weight:600}.status-type-badge.type-Script{color:#89b4fa;background:#89b4fa26}.status-type-badge.type-ServerScript{color:#a6e3a1;background:#a6e3a126}.status-type-badge.type-LocalScript{color:#f9e2af;background:#f9e2af26}.status-type-badge.type-ModuleScript{color:#cba6f7;background:#cba6f726}.status-vm{border-radius:4px;padding:1px 6px;font-weight:500}.status-vm.ready{color:#89b4fa}.status-vm.running{color:#a6e3a1;font-weight:700}.vm-dot{border-radius:50%;width:6.5px;height:6.5px;display:inline-block}.vm-dot.steady{background:#89b4fa;box-shadow:0 0 5px #89b4fa99}.vm-dot.pulse{background:#a6e3a1;animation:1s ease-in-out infinite alternate live-pulse;box-shadow:0 0 8px #a6e3a1}@keyframes live-pulse{0%{transform:scale(.9);box-shadow:0 0 3px #a6e3a1}to{transform:scale(1.3);box-shadow:0 0 10px #a6e3a1,0 0 15px #a6e3a1b3}}.status-hint{opacity:.65;font-size:10px}.status-hint kbd{background:#ffffff14;border:1px solid #ffffff26;border-radius:3px;padding:0 3px;font-family:inherit;font-size:9px}.editor-status-bar.light .status-hint kbd{background:#0000000f;border-color:#00000026}@media (width<=768px){.status-hint,.status-match-pill .match-word{display:none}.editor-status-bar{height:22px;padding:0 6px;font-size:10px}}.editor-quick-actions{-webkit-user-select:none;user-select:none;z-index:5;border-bottom:1px solid #0000;justify-content:space-between;align-items:center;min-height:36px;padding:4px 10px;transition:background-color .2s,border-color .2s;display:flex}.editor-quick-actions.dark{background-color:#181825;border-bottom-color:#313244}.editor-quick-actions.light{background-color:#e6e9ef;border-bottom-color:#ccd0da}.quick-actions-left,.quick-actions-right{align-items:center;gap:4px;display:flex}.quick-action-sep{background-color:#ffffff1f;width:1px;height:16px;margin:0 4px}.editor-quick-actions.light .quick-action-sep{background-color:#0000001f}.quick-action-btn{cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;align-items:center;gap:5px;padding:4px 8px;font-size:11.5px;font-weight:500;line-height:1;transition:all .15s;display:inline-flex}.editor-quick-actions.dark .quick-action-btn{color:#a6adc8}.editor-quick-actions.dark .quick-action-btn:hover{color:#cdd6f4;background-color:#313244;border-color:#45475a}.editor-quick-actions.dark .quick-action-btn:active{background-color:#45475a;transform:scale(.96)}.editor-quick-actions.light .quick-action-btn{color:#4c4f69}.editor-quick-actions.light .quick-action-btn:hover{color:#4c4f69;background-color:#dce0e8;border-color:#bcc0cc}.editor-quick-actions.light .quick-action-btn:active{transform:scale(.96)}.quick-action-btn.highlight-action{color:#89b4fa;background:linear-gradient(135deg,#89b4fa26,#cba6f72e);border-color:#89b4fa4d}.quick-action-btn.highlight-action:hover{color:#b4befe;background:linear-gradient(135deg,#89b4fa40,#cba6f74d);border-color:#89b4fa;box-shadow:0 0 10px #89b4fa40}.editor-quick-actions.light .quick-action-btn.highlight-action{color:#1e66f5;background:linear-gradient(135deg,#1e66f51a,#8839ef1f);border-color:#1e66f540}.quick-action-btn.danger-hover:hover{color:#f38ba8!important;background-color:#f38ba826!important;border-color:#f38ba84d!important}.editor-toast-banner{color:#11111b;background:linear-gradient(135deg,#89b4fa,#cba6f7);border-radius:9999px;align-items:center;padding:3px 10px;font-size:11px;font-weight:600;animation:.2s cubic-bezier(.16,1,.3,1) toast-pop;display:inline-flex;box-shadow:0 2px 10px #89b4fa66}.editor-engine-pill{text-transform:uppercase;letter-spacing:.5px;color:#89b4fa;background:#89b4fa26;border:1px solid #89b4fa4d;border-radius:4px;margin-right:4px;padding:2px 7px;font-size:10px;font-weight:700}.code-editor-wrapper.light .editor-engine-pill{color:#1e66f5;background:#1e66f51a;border-color:#1e66f540}@keyframes toast-pop{0%{opacity:0;transform:translateY(-4px)scale(.92)}to{opacity:1;transform:translateY(0)scale(1)}}.shortcuts-modal-overlay{z-index:1000;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background-color:#000000a6;justify-content:center;align-items:center;padding:16px;animation:.18s ease-out modal-fade-in;display:flex;position:fixed;inset:0}@keyframes modal-fade-in{0%{opacity:0}to{opacity:1}}.shortcuts-modal-card{border:1px solid #ffffff1a;border-radius:12px;flex-direction:column;width:100%;max-width:580px;animation:.22s cubic-bezier(.16,1,.3,1) card-pop;display:flex;overflow:hidden;box-shadow:0 20px 50px #0009}@keyframes card-pop{0%{opacity:0;transform:scale(.94)translateY(8px)}to{opacity:1;transform:scale(1)translateY(0)}}.shortcuts-modal-card.dark{color:#cdd6f4;background-color:#181825;border-color:#313244}.shortcuts-modal-card.light{color:#4c4f69;background-color:#eff1f5;border-color:#ccd0da}.shortcuts-modal-header{border-bottom:1px solid #ffffff14;justify-content:space-between;align-items:center;padding:14px 18px;display:flex}.shortcuts-modal-card.light .shortcuts-modal-header{border-bottom-color:#00000014}.modal-title-group{align-items:center;gap:10px;display:flex}.modal-title-group h3{letter-spacing:-.2px;margin:0;font-size:15px;font-weight:600}.modal-title-icon{color:#89b4fa;font-size:16px}.shortcuts-close-btn{cursor:pointer;color:#a6adc8;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:6px;font-size:16px;transition:all .15s;display:flex}.shortcuts-close-btn:hover{color:#fff;background:#ffffff1a}.shortcuts-modal-content{flex-direction:column;gap:16px;max-height:60vh;padding:16px 18px;display:flex;overflow-y:auto}.shortcut-category h4{text-transform:uppercase;letter-spacing:.6px;color:#89b4fa;margin:0 0 8px;font-size:11px;font-weight:700}.shortcuts-modal-card.light .shortcut-category h4{color:#1e66f5}.shortcut-row{background-color:#ffffff08;border-radius:6px;justify-content:space-between;align-items:center;margin-bottom:4px;padding:6px 10px;font-size:13px;display:flex}.shortcuts-modal-card.light .shortcut-row{background-color:#00000008}.shortcut-row .keys{align-items:center;gap:4px;display:flex}.shortcut-row kbd{color:#f5e0dc;background:#313244;border:1px solid #45475a;border-radius:4px;padding:2px 6px;font-family:JetBrains Mono,Fira Code,monospace;font-size:11px;font-weight:600;box-shadow:0 1px 2px #0003}.shortcuts-modal-card.light .shortcut-row kbd{color:#4c4f69;background:#e6e9ef;border-color:#bcc0cc}.feature-tag{color:#89b4fa;background:#89b4fa1f;border-radius:4px;padding:2px 8px;font-size:11px;font-weight:500}.shortcuts-modal-footer{border-top:1px solid #ffffff14;justify-content:space-between;align-items:center;padding:12px 18px;font-size:12px;display:flex}.shortcuts-modal-card.light .shortcuts-modal-footer{border-top-color:#00000014}.shortcuts-hint{opacity:.65;font-size:11px}.shortcuts-hint kbd{background:#ffffff1a;border-radius:3px;padding:1px 4px;font-size:10px}.btn-primary-close{color:#11111b;cursor:pointer;background-color:#89b4fa;border:none;border-radius:6px;padding:6px 16px;font-size:12.5px;font-weight:600;transition:all .15s}.btn-primary-close:hover{background-color:#b4befe;transform:translateY(-1px)}@media (width<=600px){.quick-action-btn .btn-label{display:none}}.console-panel{border-top:1px solid var(--border-color,#313244);z-index:10;flex-direction:column;flex-shrink:0;transition:height .2s;display:flex}.console-panel.console-open{height:220px;min-height:120px}.console-panel.console-closed{height:auto}.console-header{cursor:pointer;-webkit-user-select:none;user-select:none;border-bottom:1px solid var(--border-color,#313244);justify-content:space-between;align-items:center;gap:8px;min-height:36px;padding:5px 12px;display:flex}.console-panel.dark .console-header{color:#cdd6f4;background:#181825}.console-panel.light .console-header{color:#4c4f69;background:#e6e9ef}.console-header-left{align-items:center;gap:8px;display:flex}.console-header-icon{opacity:.8;color:#89b4fa;font-size:13px}.console-panel.light .console-header-icon{color:#1e66f5}.console-title{text-transform:uppercase;letter-spacing:.5px;font-size:12px;font-weight:600}.console-badge{border-radius:10px;padding:1px 7px;font-size:11px;font-weight:600}.console-panel.dark .console-badge{color:#cdd6f4;background:#313244}.console-panel.light .console-badge{color:#4c4f69;background:#ccd0da}.console-badge-error{color:#f38ba8;background:#f38ba830;border-radius:10px;align-items:center;gap:4px;padding:1px 6px;font-size:11px;display:flex}.console-panel.light .console-badge-error{color:#d20f39;background:#d20f3920}.console-badge-warn{color:#f9e2af;background:#f9e2af30;border-radius:10px;align-items:center;gap:4px;padding:1px 6px;font-size:11px;display:flex}.console-panel.light .console-badge-warn{color:#df8e1d;background:#df8e1d20}.console-filters{align-items:center;gap:4px;display:flex}.filter-btn{color:inherit;opacity:.6;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:4px;padding:2px 8px;font-size:11px;transition:all .15s}.filter-btn:hover{opacity:.9}.console-panel.dark .filter-btn:hover{background:#313244}.console-panel.light .filter-btn:hover{background:#dce0e8}.filter-btn.active{opacity:1;font-weight:600}.console-panel.dark .filter-btn.active{color:#89b4fa;background:#313244;border-color:#45475a}.console-panel.light .filter-btn.active{color:#1e66f5;background:#ccd0da;border-color:#bcc0cc}.console-header-actions{align-items:center;gap:6px;display:flex}.console-action-btn,.console-toggle-btn{cursor:pointer;color:inherit;opacity:.75;background:0 0;border:none;border-radius:4px;align-items:center;gap:5px;padding:4px 8px;font-size:12px;transition:all .15s;display:flex}.console-action-btn:hover,.console-toggle-btn:hover{opacity:1}.console-panel.dark .console-action-btn:hover,.console-panel.dark .console-toggle-btn:hover{background:#313244}.console-panel.light .console-action-btn:hover,.console-panel.light .console-toggle-btn:hover{background:#dce0e8}.btn-label{font-size:11px}.console-body{flex:1;padding:6px 0;font-family:JetBrains Mono,Fira Code,Consolas,monospace;font-size:12px;overflow:auto}.console-panel.dark .console-body{color:#cdd6f4;background:#11111b}.console-panel.light .console-body{color:#4c4f69;background:#eff1f5}.console-empty{opacity:.45;justify-content:center;align-items:center;gap:8px;padding:30px;font-size:12px;display:flex}.console-empty-icon{font-size:15px}.console-msg{white-space:pre-wrap;word-break:break-word;border-left:3px solid #0000;align-items:flex-start;gap:10px;padding:3px 12px;line-height:1.5;display:flex}.console-panel.dark .console-msg:hover{background:#ffffff08}.console-panel.light .console-msg:hover{background:#00000008}.console-timestamp{opacity:.4;flex-shrink:0;min-width:58px;padding-top:2px;font-size:10px}.console-text{flex:1}.console-source{opacity:.55;flex-shrink:0;padding-top:1px;font-size:10px}.console-msg-output{color:inherit}.console-msg-warn{color:#f9e2af;background:#f9e2af0d;border-left-color:#f9e2af}.console-panel.light .console-msg-warn{color:#df8e1d;background:#df8e1d0d;border-left-color:#df8e1d}.console-msg-error{color:#f38ba8;background:#f38ba80f;border-left-color:#f38ba8}.console-panel.light .console-msg-error{color:#d20f39;background:#d20f390f;border-left-color:#d20f39}.console-msg-info{color:#89b4fa;border-left-color:#89b4fa}.console-panel.light .console-msg-info{color:#1e66f5;border-left-color:#1e66f5}.console-msg-system{color:#a6adc8;font-style:italic}.console-panel.light .console-msg-system{color:#6c6f85}@media (width<=768px){.console-panel.console-open{height:180px}.console-body{font-size:11px}.console-timestamp,.btn-label,.console-filters{display:none}}.explorer-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:99;background:#0006;position:fixed;inset:0}.explorer-panel{z-index:100;flex-direction:column;width:320px;max-width:90vw;animation:.22s cubic-bezier(.16,1,.3,1) slideIn;display:flex;position:fixed;top:0;bottom:0;right:0;box-shadow:-6px 0 24px #00000059}@keyframes slideIn{0%{transform:translate(100%)}to{transform:translate(0)}}.explorer-panel.dark{color:#cdd6f4;background:#181825;border-left:1px solid #313244}.explorer-panel.light{color:#4c4f69;background:#eff1f5;border-left:1px solid #ccd0da}.explorer-header{border-bottom:1px solid var(--border-color,#313244);justify-content:space-between;align-items:center;padding:10px 14px;font-size:13px;font-weight:600;display:flex}.explorer-panel.dark .explorer-header{background:#1e1e2e}.explorer-panel.light .explorer-header{background:#e6e9ef}.explorer-title{text-transform:uppercase;letter-spacing:.5px;align-items:center;gap:8px;font-size:12px;display:flex}.explorer-globe-icon{color:#89b4fa;font-size:14px}.explorer-panel.light .explorer-globe-icon{color:#1e66f5}.explorer-header-actions{align-items:center;gap:6px;display:flex}.explorer-btn{cursor:pointer;color:inherit;opacity:.75;background:0 0;border:none;border-radius:4px;padding:5px 8px;transition:all .15s}.explorer-btn:hover{opacity:1}.explorer-panel.dark .explorer-btn:hover{background:#313244}.explorer-panel.light .explorer-btn:hover{background:#ccd0da}.explorer-body{flex:1;padding:6px 4px;font-size:13px;overflow-y:auto}.explorer-empty{opacity:.5;justify-content:center;align-items:center;gap:8px;padding:40px;font-size:13px;display:flex}.tree-node-row{cursor:pointer;white-space:nowrap;-webkit-user-select:none;user-select:none;border-radius:4px;align-items:center;gap:6px;margin:1px 2px;padding:4px 6px;transition:background .12s;display:flex}.tree-node-row.dark:hover{background:#313244}.tree-node-row.light:hover{background:#dce0e8}.tree-node-row.selected{font-weight:500}.tree-node-row.dark.selected{color:#89b4fa;background:#45475a}.tree-node-row.light.selected{color:#1e66f5;background:#ccd0da}.tree-expand-icon{text-align:center;opacity:.7;flex-shrink:0;width:14px;font-size:10px}.tree-class-icon{text-align:center;flex-shrink:0;width:16px;font-size:13px}.tree-node-row.dark .tree-class-icon{color:#89b4fa}.tree-node-row.light .tree-class-icon{color:#1e66f5}.tree-node-name{text-overflow:ellipsis;flex:1;font-size:13px;overflow:hidden}.tree-node-class{opacity:.45;flex-shrink:0;margin-left:4px;font-size:10px}.explorer-inspector{border-top:1px solid var(--border-color,#313244);flex-direction:column;max-height:200px;font-size:11px;display:flex;overflow-y:auto}.explorer-panel.dark .explorer-inspector{background:#11111b}.explorer-panel.light .explorer-inspector{background:#e6e9ef}.inspector-header{border-bottom:1px solid var(--border-color,#313244);justify-content:space-between;align-items:center;padding:6px 12px;font-weight:600;display:flex}.inspector-close{cursor:pointer;color:inherit;opacity:.7;background:0 0;border:none;padding:2px 4px}.inspector-close:hover{opacity:1}.inspector-properties{padding:4px 10px}.property-row{border-bottom:1px dashed #ffffff0d;justify-content:space-between;align-items:center;padding:3px 0;display:flex}.prop-name{opacity:.8;font-weight:500}.prop-value{opacity:.65;text-overflow:ellipsis;white-space:nowrap;max-width:160px;overflow:hidden}.font-mono{font-family:monospace}@media (width<=768px){.explorer-panel{width:290px}}.modal-overlay{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:200;background:#0000008c;justify-content:center;align-items:center;padding:16px;animation:.16s fadeIn;display:flex;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-container{border-radius:10px;flex-direction:column;width:100%;max-width:540px;max-height:85vh;animation:.18s cubic-bezier(.16,1,.3,1) scaleUp;display:flex;overflow:hidden;box-shadow:0 16px 40px #00000073}@keyframes scaleUp{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.modal-container.modal-sm{max-width:400px}.modal-container.modal-md{max-width:560px}.modal-container.modal-lg{max-width:680px}.modal-container.dark{color:#cdd6f4;background:#181825;border:1px solid #313244}.modal-container.light{color:#4c4f69;background:#eff1f5;border:1px solid #ccd0da}.modal-header{border-bottom:1px solid var(--border-color,#313244);justify-content:space-between;align-items:center;padding:12px 18px;display:flex}.modal-container.dark .modal-header{background:#1e1e2e}.modal-container.light .modal-header{background:#e6e9ef}.modal-title{align-items:center;gap:8px;font-size:14px;font-weight:600;display:flex}.modal-title-icon{color:#89b4fa}.modal-container.light .modal-title-icon{color:#1e66f5}.modal-close-btn{cursor:pointer;color:inherit;opacity:.65;background:0 0;border:none;border-radius:4px;padding:4px 6px;font-size:14px;transition:opacity .12s}.modal-close-btn:hover{opacity:1}.modal-body{flex:1;padding:18px;overflow-y:auto}.modal-subtitle{opacity:.7;margin-top:0;margin-bottom:16px;font-size:12px;line-height:1.4}.modal-form{flex-direction:column;gap:16px;padding:18px;display:flex}.form-group{flex-direction:column;gap:6px;display:flex}.form-label{font-size:12px;font-weight:600}.form-input{box-sizing:border-box;border-radius:6px;outline:none;width:100%;padding:9px 12px;font-size:13px;transition:border-color .15s}.modal-container.dark .form-input{color:#cdd6f4;background:#11111b;border:1px solid #313244}.modal-container.light .form-input{color:#4c4f69;background:#fff;border:1px solid #ccd0da}.form-input:focus{border-color:#89b4fa}.modal-container.light .form-input:focus{border-color:#1e66f5}.form-error{color:#f38ba8;font-size:11px}.script-type-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.type-option-card{cursor:pointer;-webkit-user-select:none;user-select:none;border:1px solid #0000;border-radius:6px;padding:10px 12px;transition:all .14s}.modal-container.dark .type-option-card{background:#11111b;border-color:#313244}.modal-container.light .type-option-card{background:#fff;border-color:#ccd0da}.type-option-card:hover{border-color:#89b4fa80}.modal-container.dark .type-option-card.selected{background:#313244;border-color:#89b4fa}.modal-container.light .type-option-card.selected{background:#dce0e8;border-color:#1e66f5}.type-card-header{align-items:center;gap:8px;margin-bottom:4px;display:flex}.type-card-icon{font-size:14px}.type-card-icon.type-Script{color:#89b4fa}.type-card-icon.type-ServerScript{color:#a6e3a1}.type-card-icon.type-LocalScript{color:#f9e2af}.type-card-icon.type-ModuleScript{color:#cba6f7}.type-card-label{font-size:12px;font-weight:600}.type-card-desc{opacity:.65;margin:0;font-size:10px;line-height:1.3}.modal-actions,.modal-footer{justify-content:flex-end;align-items:center;gap:8px;padding-top:10px;display:flex}.modal-footer{border-top:1px solid var(--border-color,#313244);padding:12px 18px}.btn-primary{color:#11111b;cursor:pointer;background:#89b4fa;border:none;border-radius:5px;padding:7px 16px;font-size:12px;font-weight:600;transition:opacity .15s}.modal-container.light .btn-primary{color:#fff;background:#1e66f5}.btn-primary:hover{opacity:.9}.btn-secondary{color:inherit;cursor:pointer;opacity:.75;background:0 0;border:1px solid #0000;border-radius:5px;padding:7px 14px;font-size:12px;transition:all .15s}.btn-secondary:hover{opacity:1}.modal-container.dark .btn-secondary:hover{background:#313244}.modal-container.light .btn-secondary:hover{background:#ccd0da}.settings-tabs{border-bottom:1px solid #ffffff14;gap:8px;padding:14px 18px 0;display:flex}.modal-container.light .settings-tabs{border-bottom-color:#00000014}.settings-tab-btn{color:inherit;opacity:.65;cursor:pointer;background:0 0;border:1px solid #0000;border-bottom-width:2px;border-radius:6px 6px 0 0;align-items:center;gap:7px;padding:8px 16px;font-size:13px;font-weight:600;transition:all .15s;display:flex}.settings-tab-btn:hover{opacity:.95}.modal-container.dark .settings-tab-btn.active{opacity:1;color:#89b4fa;border-bottom-color:#89b4fa}.modal-container.light .settings-tab-btn.active{opacity:1;color:#1e66f5;border-bottom-color:#1e66f5}.engine-toggle-group{gap:8px;display:flex}.engine-btn{color:inherit;cursor:pointer;background:0 0;border:1px solid #ffffff1a;border-radius:6px;align-items:center;gap:6px;padding:6px 14px;font-size:12px;font-weight:500;transition:all .15s;display:flex}.modal-container.light .engine-btn{border-color:#00000026}.modal-container.dark .engine-btn.active{color:#89b4fa;background:#89b4fa2e;border-color:#89b4fa;font-weight:700;box-shadow:0 0 10px #89b4fa40}.modal-container.light .engine-btn.active{color:#1e66f5;background:#1e66f524;border-color:#1e66f5;font-weight:700}.settings-body{flex-direction:column;gap:16px;display:flex}.settings-row{border-bottom:1px solid #ffffff0d;justify-content:space-between;align-items:center;padding-bottom:12px;display:flex}.settings-label{flex-direction:column;gap:2px;display:flex}.setting-name{font-size:13px;font-weight:600}.setting-desc{opacity:.55;font-size:11px}.settings-control{align-items:center;gap:8px;display:flex}.theme-toggle-group{gap:4px;display:flex}.theme-btn{color:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:5px;align-items:center;gap:6px;padding:6px 12px;font-size:12px;display:flex}.modal-container.dark .theme-btn.active{color:#89b4fa;background:#313244;border-color:#89b4fa}.modal-container.light .theme-btn.active{color:#1e66f5;background:#ccd0da;border-color:#1e66f5}.range-input{cursor:pointer;width:100px}.range-value{min-width:32px;font-size:12px}.select-input{cursor:pointer;border-radius:5px;padding:5px 10px;font-size:12px}.modal-container.dark .select-input{color:#cdd6f4;background:#11111b;border:1px solid #313244}.modal-container.light .select-input{color:#4c4f69;background:#fff;border:1px solid #ccd0da}.toggle-switch{width:38px;height:20px;display:inline-block;position:relative}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{cursor:pointer;background-color:#45475a;border-radius:20px;transition:all .2s;position:absolute;inset:0}.toggle-slider:before{content:"";background-color:#fff;border-radius:50%;width:14px;height:14px;transition:all .2s;position:absolute;bottom:3px;left:3px}input:checked+.toggle-slider{background-color:#89b4fa}.modal-container.light input:checked+.toggle-slider{background-color:#1e66f5}input:checked+.toggle-slider:before{transform:translate(18px)}.docs-nav-tabs{border-bottom:1px solid var(--border-color,#313244);background:#0000001a;gap:4px;padding:0 16px;display:flex}.docs-nav-btn{color:inherit;opacity:.6;cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;padding:8px 12px;font-size:12px;font-weight:500}.docs-nav-btn.active{opacity:1;border-bottom-color:#89b4fa;font-weight:600}.modal-container.light .docs-nav-btn.active{border-bottom-color:#1e66f5}.docs-section h3{margin-top:0;margin-bottom:8px;font-size:15px}.docs-section h4{margin-top:14px;margin-bottom:6px;font-size:13px}.docs-section p{opacity:.8;margin-top:0;font-size:12px;line-height:1.5}.docs-list{padding-left:20px;font-size:12px;line-height:1.6}.docs-list code{background:#ffffff14;border-radius:3px;padding:1px 4px;font-family:monospace}.script-type-doc-card{border:1px solid #ffffff0f;border-radius:6px;margin-bottom:10px;padding:10px 14px}.modal-container.dark .script-type-doc-card{background:#11111b}.modal-container.light .script-type-doc-card{background:#fff;border-color:#ccd0da}.card-heading{align-items:center;gap:8px;margin-bottom:6px;display:flex}.type-icon{font-size:14px}.api-grid{flex-direction:column;gap:8px;display:flex}.api-item{border:1px solid #ffffff0d;border-radius:5px;flex-direction:column;gap:2px;padding:6px 10px;display:flex}.modal-container.dark .api-item{background:#11111b}.modal-container.light .api-item{background:#fff}.api-name code{color:#89b4fa;font-weight:600}.modal-container.light .api-name code{color:#1e66f5}.api-desc{opacity:.7;font-size:11px}.unsupported-list{flex-direction:column;gap:10px;display:flex}.unsupported-item{background:#f38ba814;border-radius:6px;align-items:flex-start;gap:10px;padding:8px 12px;font-size:12px;line-height:1.4;display:flex}.unsupported-icon{color:#f38ba8;margin-top:2px;font-size:15px}.examples-list{flex-direction:column;gap:10px;display:flex}.example-card{cursor:pointer;border:1px solid #ffffff14;border-radius:7px;padding:12px 14px;transition:all .15s}.modal-container.dark .example-card{background:#11111b}.modal-container.light .example-card{background:#fff;border-color:#ccd0da}.example-card:hover{border-color:#89b4fa;transform:translateY(-1px)}.modal-container.light .example-card:hover{border-color:#1e66f5}.example-header{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.example-title-area{align-items:center;gap:8px;display:flex}.example-icon{font-size:14px}.example-name{font-size:13px;font-weight:600}.example-badge{opacity:.75;background:#ffffff14;border-radius:4px;padding:2px 6px;font-size:10px}.example-desc{opacity:.7;margin:0 0 8px;font-size:11px;line-height:1.4}.example-footer{justify-content:flex-end;display:flex}.load-action{color:#89b4fa;align-items:center;gap:4px;font-size:11px;font-weight:600;display:flex}.modal-container.light .load-action{color:#1e66f5}@media (width<=768px){.script-type-grid{grid-template-columns:1fr}}.virtual-mouse-cursor{pointer-events:none;z-index:999999;filter:drop-shadow(0 2px 5px #0009);will-change:transform, left, top;width:22px;height:22px;transition:transform 40ms ease-out;position:fixed;transform:translate(-1px,-1px)}.virtual-mouse-cursor.is-clicking{transform:scale(.85)}.virtual-mouse-cursor.is-dragging{filter:drop-shadow(0 0 8px #89b4fa)drop-shadow(0 2px 5px #000000b3)}.virtual-mouse-cursor-svg{width:100%;height:100%;display:block}.virtual-mouse-ripple{pointer-events:none;z-index:999998;background-color:#89b4fa4d;border:2px solid #89b4fa;border-radius:50%;width:32px;height:32px;animation:.35s ease-out forwards mouseRipple;position:fixed;transform:translate(-50%,-50%)scale(.2)}.virtual-mouse-ripple.right-click{background-color:#f38ba84d;border-color:#f38ba8}@keyframes mouseRipple{0%{opacity:1;transform:translate(-50%,-50%)scale(.2)}to{opacity:0;transform:translate(-50%,-50%)scale(1.6)}}.virtual-mouse-floating-panel{z-index:999990;-webkit-backdrop-filter:blur(12px);color:#cdd6f4;-webkit-user-select:none;user-select:none;touch-action:none;background-color:#181825f0;border:1px solid #89b4fa40;border-radius:14px;width:260px;transition:box-shadow .2s;position:fixed;bottom:80px;right:18px;overflow:hidden;box-shadow:0 12px 35px #0009,0 0 0 1px #ffffff0d}.virtual-mouse-floating-panel.light{color:#4c4f69;background-color:#eff1f5f0;border-color:#1e66f540;box-shadow:0 12px 30px #0003}.virtual-mouse-badge{z-index:999990;color:#89b4fa;cursor:pointer;-webkit-user-select:none;user-select:none;touch-action:none;background-color:#1e1e2e;border:1px solid #89b4fa;border-radius:24px;align-items:center;gap:.5rem;padding:.5rem .85rem;font-size:.825rem;font-weight:600;display:flex;position:fixed;bottom:80px;right:18px;box-shadow:0 8px 24px #00000073}.virtual-mouse-badge:hover{background-color:#313244}.vm-panel-header{cursor:grab;background-color:#11111b99;border-bottom:1px solid #ffffff0f;justify-content:space-between;align-items:center;padding:.5rem .75rem;display:flex}.virtual-mouse-floating-panel.light .vm-panel-header{background-color:#dce0e8b3;border-bottom-color:#0000000f}.vm-panel-header:active{cursor:grabbing}.vm-title{text-transform:uppercase;letter-spacing:.5px;color:#89b4fa;align-items:center;gap:.4rem;font-size:.775rem;font-weight:700;display:flex}.vm-header-actions{align-items:center;gap:.35rem;display:flex}.vm-btn-icon{color:#a6adc8;cursor:pointer;background:0 0;border:none;border-radius:4px;padding:.2rem .35rem;font-size:.75rem}.vm-btn-icon:hover{color:#cdd6f4;background-color:#ffffff14}.vm-touchpad-area{cursor:crosshair;touch-action:none;background:radial-gradient(circle,#31324499 0%,#1e1e2ecc 100%);border:1px dashed #89b4fa4d;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;height:120px;margin:.5rem;transition:border-color .15s,background .15s;display:flex;position:relative}.virtual-mouse-floating-panel.light .vm-touchpad-area{background:radial-gradient(circle,#dce0e899 0%,#ccd0dacc 100%);border-color:#1e66f54d}.vm-touchpad-area.is-active{background:radial-gradient(circle,#89b4fa1f 0%,#1e1e2ee6 100%);border-style:solid;border-color:#89b4fa}.vm-touchpad-hint{color:#a6adc8;pointer-events:none;text-align:center;font-size:.72rem;line-height:1.3}.vm-coords-pill{color:#89b4fa;background-color:#0006;border-radius:4px;padding:1px 5px;font-family:monospace;font-size:.65rem;position:absolute;bottom:5px;right:6px}.vm-buttons-row{gap:.35rem;padding:0 .5rem .5rem;display:flex}.vm-mouse-btn{color:#cdd6f4;cursor:pointer;background-color:#1e1e2e;border:1px solid #313244;border-radius:8px;flex:1;justify-content:center;align-items:center;gap:.3rem;padding:.55rem .4rem;font-size:.75rem;font-weight:600;transition:all .12s;display:flex}.virtual-mouse-floating-panel.light .vm-mouse-btn{color:#4c4f69;background-color:#dce0e8;border-color:#ccd0da}.vm-mouse-btn:hover{background-color:#313244;border-color:#89b4fa}.vm-mouse-btn:active,.vm-mouse-btn.active{color:#11111b;background:linear-gradient(135deg,#89b4fa,#b4befe);border-color:#0000;transform:translateY(1px)}.vm-mouse-btn.rmb:active,.vm-mouse-btn.rmb.active{background:linear-gradient(135deg,#f38ba8,#eba0ac)}.vm-scroll-row{gap:.35rem;padding:0 .5rem .5rem;display:flex}.vm-scroll-btn{color:#bac2de;cursor:pointer;background-color:#31324480;border:1px solid #ffffff14;border-radius:6px;flex:1;justify-content:center;align-items:center;gap:.3rem;padding:.35rem .4rem;font-size:.7rem;font-weight:500;transition:all .12s;display:flex}.virtual-mouse-floating-panel.light .vm-scroll-btn{color:#5c5f77;background-color:#dce0e880;border-color:#00000014}.vm-scroll-btn:hover{color:#cdd6f4;background-color:#45475a}.vm-scroll-btn:active{color:#11111b;background-color:#89b4fa}.ai-modal-container{color:#cdd6f4;background-color:#1e1e2e;border:1px solid #313244;border-radius:14px;flex-direction:column;width:100%;max-width:780px;max-height:90vh;animation:.2s cubic-bezier(.16,1,.3,1) forwards aiModalEnter;display:flex;overflow:hidden;box-shadow:0 25px 60px #000000a6,0 0 25px #cba6f726}.ai-modal-container.light{color:#4c4f69;background-color:#eff1f5;border-color:#ccd0da;box-shadow:0 25px 50px #0003}@keyframes aiModalEnter{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.ai-modal-header{background-color:#11111ba6;border-bottom:1px solid #313244;justify-content:space-between;align-items:center;padding:1rem 1.25rem;display:flex}.ai-modal-container.light .ai-modal-header{background-color:#dce0e8b3;border-bottom-color:#ccd0da}.ai-modal-title{color:#cba6f7;align-items:center;gap:.75rem;font-size:1.15rem;font-weight:700;display:flex}.ai-modal-badge{color:#11111b;text-transform:uppercase;letter-spacing:.5px;background:linear-gradient(135deg,#cba6f7,#89b4fa);border-radius:12px;padding:.2rem .6rem;font-size:.7rem;font-weight:600}.ai-modal-body{flex-direction:column;flex:1;gap:1.25rem;padding:1.25rem;display:flex;overflow-y:auto}.ai-key-section{background-color:#1e1e2eb3;border:1px solid #313244;border-radius:10px;flex-direction:column;gap:.75rem;padding:1rem;display:flex}.ai-modal-container.light .ai-key-section{background-color:#e6e9efcc;border-color:#ccd0da}.ai-key-header{justify-content:space-between;align-items:center;font-size:.9rem;font-weight:600;display:flex}.ai-key-status{border-radius:12px;align-items:center;gap:.4rem;padding:.2rem .6rem;font-size:.78rem;display:inline-flex}.ai-key-status.connected{color:#a6e3a1;background-color:#a6e3a126;border:1px solid #a6e3a14d}.ai-key-status.disconnected{color:#fab387;background-color:#fab38726;border:1px solid #fab3874d}.ai-key-input-row{gap:.5rem;display:flex}.ai-key-input{color:#cdd6f4;background-color:#181825;border:1px solid #45475a;border-radius:8px;outline:none;flex:1;padding:.6rem .85rem;font-family:monospace;font-size:.85rem;transition:border-color .15s}.ai-modal-container.light .ai-key-input{color:#4c4f69;background-color:#fff;border-color:#bcc0cc}.ai-key-input:focus{border-color:#cba6f7}.ai-key-link{color:#89b4fa;font-size:.75rem;text-decoration:none}.ai-key-link:hover{text-decoration:underline}.ai-model-section{flex-direction:column;gap:.5rem;display:flex}.ai-model-label-row{justify-content:space-between;align-items:center;font-size:.85rem;font-weight:600;display:flex}.ai-model-selector-group{gap:.5rem;display:flex}.ai-model-search-input{color:#cdd6f4;background-color:#181825;border:1px solid #45475a;border-radius:8px;outline:none;flex:1;padding:.55rem .8rem;font-size:.85rem}.ai-modal-container.light .ai-model-search-input{color:#4c4f69;background-color:#fff;border-color:#bcc0cc}.ai-model-select{color:#cdd6f4;cursor:pointer;background-color:#181825;border:1px solid #45475a;border-radius:8px;outline:none;flex:2;padding:.55rem .8rem;font-size:.85rem}.ai-modal-container.light .ai-model-select{color:#4c4f69;background-color:#fff;border-color:#bcc0cc}.ai-script-context-card{background-color:#cba6f71a;border:1px solid #cba6f740;border-radius:8px;justify-content:space-between;align-items:center;padding:.65rem .9rem;font-size:.825rem;display:flex}.ai-script-context-info{color:#cba6f7;align-items:center;gap:.5rem;font-weight:600;display:flex}.ai-script-context-toggle{color:#a6adc8;cursor:pointer;align-items:center;gap:.4rem;font-size:.78rem;display:flex}.ai-preset-chips{flex-wrap:wrap;gap:.4rem;display:flex}.ai-chip-btn{color:#bac2de;cursor:pointer;background-color:#31324480;border:1px solid #45475a;border-radius:14px;padding:.35rem .65rem;font-size:.75rem;transition:all .15s}.ai-modal-container.light .ai-chip-btn{color:#5c5f77;background-color:#dce0e8b3;border-color:#ccd0da}.ai-chip-btn:hover{color:#cdd6f4;background-color:#45475a;border-color:#cba6f7;transform:translateY(-1px)}.ai-prompt-area{flex-direction:column;gap:.5rem;display:flex}.ai-prompt-textarea{resize:vertical;color:#cdd6f4;box-sizing:border-box;background-color:#181825;border:1px solid #45475a;border-radius:8px;outline:none;width:100%;min-height:85px;padding:.75rem;font-family:inherit;font-size:.875rem;line-height:1.45}.ai-modal-container.light .ai-prompt-textarea{color:#4c4f69;background-color:#fff;border-color:#bcc0cc}.ai-prompt-textarea:focus{border-color:#cba6f7}.ai-actions-row{justify-content:flex-end;gap:.75rem;display:flex}.ai-btn-generate{color:#11111b;cursor:pointer;background:linear-gradient(135deg,#cba6f7,#89b4fa);border:none;border-radius:8px;align-items:center;gap:.5rem;padding:.65rem 1.4rem;font-size:.9rem;font-weight:700;transition:all .15s;display:inline-flex}.ai-btn-generate:hover:not(:disabled){filter:brightness(1.1);transform:translateY(-1px);box-shadow:0 4px 14px #cba6f766}.ai-btn-generate:disabled{opacity:.6;cursor:not-allowed}.ai-response-card{background-color:#181825;border:1px solid #45475a;border-radius:10px;flex-direction:column;display:flex;overflow:hidden}.ai-modal-container.light .ai-response-card{background-color:#fff;border-color:#bcc0cc}.ai-response-header{background-color:#1e1e2ecc;border-bottom:1px solid #313244;justify-content:space-between;align-items:center;padding:.65rem .9rem;display:flex}.ai-modal-container.light .ai-response-header{background-color:#e6e9ef;border-bottom-color:#ccd0da}.ai-response-actions{flex-wrap:wrap;gap:.4rem;display:flex}.ai-apply-btn{cursor:pointer;border:none;border-radius:6px;align-items:center;gap:.35rem;padding:.35rem .75rem;font-size:.775rem;font-weight:600;transition:all .12s;display:inline-flex}.ai-apply-btn.replace{color:#11111b;background:linear-gradient(135deg,#cba6f7,#b4befe)}.ai-apply-btn.append{color:#11111b;background:linear-gradient(135deg,#89b4fa,#74c7ec)}.ai-apply-btn.new-script{color:#11111b;background:linear-gradient(135deg,#a6e3a1,#94e2d5)}.ai-apply-btn.copy{color:#cdd6f4;background-color:#313244}.ai-modal-container.light .ai-apply-btn.copy{color:#4c4f69;background-color:#dce0e8}.ai-apply-btn:hover{filter:brightness(1.1);transform:translateY(-1px)}.ai-response-content{white-space:pre-wrap;word-break:break-word;color:#cdd6f4;background-color:#11111b;max-height:300px;padding:1rem;font-family:JetBrains Mono,Fira Code,monospace;font-size:.825rem;line-height:1.5;overflow-y:auto}.ai-modal-container.light .ai-response-content{color:#313244;background-color:#f5f5f7}.ai-spinner{animation:1s linear infinite aiSpin}@keyframes aiSpin{to{transform:rotate(360deg)}}.app-root{flex-direction:column;width:100vw;height:100vh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;display:flex;position:relative;overflow:hidden}.app-root.dark{--bg-primary:#1e1e2e;--bg-secondary:#181825;--bg-tertiary:#11111b;--text-primary:#cdd6f4;--text-secondary:#a6adc8;--border-color:#313244;--accent-color:#89b4fa;background-color:var(--bg-primary);color:var(--text-primary)}.app-root.light{--bg-primary:#eff1f5;--bg-secondary:#dce0e8;--bg-tertiary:#e6e9ef;--text-primary:#4c4f69;--text-secondary:#6c6f85;--border-color:#ccd0da;--accent-color:#1e66f5;background-color:var(--bg-primary);color:var(--text-primary)}.app-main-area{flex:1;display:flex;position:relative;overflow:hidden}.editor-console-column{flex-direction:column;flex:1;min-width:0;height:100%;display:flex;overflow:hidden}@media (width<=768px){.app-root{height:100dvh}}
