@import"https://fonts.googleapis.cn/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200";@import"https://fonts.googleapis.cn/css2?family=Material+Symbols+Rounded:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200";@import"https://fonts.googleapis.cn/css2?family=Material+Symbols+Sharp:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200";.app-container[data-v-e8555e3b]{display:flex;justify-content:center}html,body{margin:0;padding:0;height:100vh;overflow:hidden}#app{height:100vh;overflow:hidden}.material-symbols[data-v-15456edd]{font-family:var(--font-family);font-weight:var(--font-wght);font-style:normal;font-size:24px;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;font-variation-settings:"FILL" var(--font-fill),"wght" var(--font-wght),"GRAD" var(--font-grad),"opsz" var(--font-opsz);-webkit-font-smoothing:antialiased}.scene-container[data-v-875924de]{position:relative;width:100%;height:100%;overflow:hidden}.control-buttons[data-v-875924de]{position:absolute;top:20px;right:50px;display:flex;flex-direction:row;gap:10px;z-index:10}.control-btn[data-v-875924de]{width:40px;height:40px;background-color:#9696963a;border-radius:6px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s}.control-btn[data-v-875924de]:hover{background-color:#6565656c}.custom-position-mode[data-v-875924de]{cursor:crosshair}.position-mode-hint[data-v-875924de]{position:absolute;top:10%;left:50%;transform:translate(-50%,-50%);background-color:#000000b3;color:#fff;padding:10px 20px;border-radius:4px;font-size:14px;pointer-events:none;animation:fadeInOut-875924de 2s ease-in-out forwards}@keyframes fadeInOut-875924de{0%{opacity:0;transform:translate(-50%,-60%)}10%{opacity:1;transform:translate(-50%,-50%)}70%{opacity:1;transform:translate(-50%,-50%)}to{opacity:0;transform:translate(-50%,-50%)}}.loading-progress-container[data-v-875924de]{position:absolute;left:50%;top:20px;transform:translate(-50%);z-index:10;display:flex;align-items:center;justify-content:center}.loading-progress-wrapper[data-v-875924de]{background:#00000005;padding:8px 16px;border-radius:8px;display:flex;flex-direction:column;align-items:center;gap:4px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.loading-progress-bar[data-v-875924de]{width:140px;height:4px;background:#fff3;border-radius:2px;overflow:hidden}.progress-fill[data-v-875924de]{height:100%;background:linear-gradient(90deg,#409eff,#67c23a);transition:width .3s ease}.progress-text[data-v-875924de]{font-size:14px;color:#1f1f1f;white-space:nowrap}@media (max-width: 768px){.loading-progress-wrapper[data-v-875924de]{padding:6px 12px}.loading-progress-bar[data-v-875924de]{width:120px}.progress-text[data-v-875924de]{font-size:12px}}.network-status[data-v-7bc32c46]{display:flex;align-items:center;padding:0 12px;height:32px;border-radius:6px;transition:all .3s ease;min-width:fit-content}.network-status.ok[data-v-7bc32c46]{color:#67c23a}.network-status.error[data-v-7bc32c46]{color:#f56c6c}.network-status.checking[data-v-7bc32c46]{color:#909399}.network-status.checking[data-v-7bc32c46] .material-symbols{animation:spin-7bc32c46 2s infinite linear}@keyframes spin-7bc32c46{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.status-indicator[data-v-7bc32c46]{display:flex;align-items:center;gap:6px;cursor:pointer;white-space:nowrap}.status-text[data-v-7bc32c46]{font-size:14px;font-weight:500;min-width:max-content}.status-details[data-v-7bc32c46]{font-size:14px;width:100%}.status-details p[data-v-7bc32c46]{margin:8px 0;color:#606266;word-break:break-all;white-space:normal;line-height:1.4}@media (max-width: 768px){.network-status[data-v-7bc32c46],.status-indicator[data-v-7bc32c46]{width:100%;justify-content:flex-start}}.ground-controls[data-v-b3f29520]{display:flex;gap:15px;align-items:center;padding:10px}.dimension-controls[data-v-b3f29520]{height:32px;display:flex;align-items:center;gap:8px;padding:4px 12px;border-radius:6px}.multiply-symbol[data-v-b3f29520]{color:#606266;font-size:16px;font-weight:500;margin:0 2px}.label[data-v-b3f29520]{font-size:16px;color:#606266;white-space:nowrap;font-weight:500;margin-bottom:2px}.label_black[data-v-b3f29520]{font-size:15px;color:#fff;white-space:nowrap;font-weight:500}.dimension-input[data-v-b3f29520]{width:80px}.dimension-input[data-v-b3f29520] .el-input__wrapper{background-color:#fff}.position-btn[data-v-b3f29520]{white-space:nowrap}[data-v-b3f29520] .el-input-number{width:120px}[data-v-b3f29520] .el-input__wrapper{padding:0 8px}[data-v-b3f29520] .el-input__inner{text-align:center}[data-v-b3f29520] .el-divider--vertical{height:20px;margin:0 5px}[data-v-b3f29520] .el-button--primary{background-color:#454545;border-color:#454545}[data-v-b3f29520] .el-button--primary:hover{background-color:#666;border-color:#666}.position-btn.positioning[data-v-b3f29520]{background-color:#e6a23c;border-color:#e6a23c;animation:pulse-b3f29520 2s infinite}.position-btn.positioning[data-v-b3f29520]:hover{background-color:#f0b959;border-color:#f0b959}@keyframes pulse-b3f29520{0%{box-shadow:0 0 #e6a23c66}70%{box-shadow:0 0 0 10px #e6a23c00}to{box-shadow:0 0 #e6a23c00}}@media (max-width: 768px){.ground-controls[data-v-b3f29520]{flex-direction:column;align-items:stretch;gap:15px}[data-v-b3f29520] .el-divider--vertical{display:none}.position-btn[data-v-b3f29520]{width:100%}.execute-btn[data-v-b3f29520]{width:100%;height:44px}}@media (max-width: 480px){.ground-controls[data-v-b3f29520]{padding:8px}.dimension-controls[data-v-b3f29520]{gap:10px}.input-group[data-v-b3f29520]{flex:1;min-width:120px}}.preset-grounds-container[data-v-b3f29520]{padding:0}.preset-grounds-title[data-v-b3f29520]{font-size:14px;color:#303133;margin-bottom:12px;text-align:center;font-weight:500}.preset-grounds[data-v-b3f29520]{display:grid;grid-template-columns:repeat(2,1fr)}.preset-ground-item[data-v-b3f29520]{cursor:pointer;text-align:center}.preset-ground-item img[data-v-b3f29520]{width:90px;height:60px;object-fit:cover;border-radius:4px;margin-bottom:4px;transition:transform .2s ease}.preset-ground-item:hover img[data-v-b3f29520]{transform:scale(1.1)}.preset-ground-item span[data-v-b3f29520]{display:block;font-size:12px;color:#606266}[data-v-b3f29520] .ground-presets-popover{padding:12px}.control-btn[data-v-b3f29520]{height:38px;display:flex;align-items:center;gap:10px;font-weight:500;padding:0 16px}.control-btn[data-v-b3f29520] .material-symbols{margin-top:-2px;font-size:20px}.execute-btn[data-v-b3f29520]{min-width:120px;height:40px;font-size:15px;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;display:flex;align-items:center;gap:12px;padding:0 20px}.execute-btn[data-v-b3f29520] .material-symbols{font-size:24px}.execute-btn[data-v-b3f29520]:not(.running){background-color:#2b7d4d;border-color:#2b7d4d}.execute-btn[data-v-b3f29520]:not(.running):hover{background-color:#3a9463;border-color:#3a9463;transform:translateY(-1px);box-shadow:0 2px 8px #2b7d4d4d}.execute-btn.running[data-v-b3f29520]{background-color:#e6a23c;border-color:#e6a23c;min-width:140px;animation:gentle-pulse-b3f29520 2s infinite}.execute-btn.running[data-v-b3f29520]:hover{background-color:#cf9236;border-color:#cf9236;transform:translateY(-1px);box-shadow:0 2px 8px #e6a23c4d}.timer[data-v-b3f29520]{font-size:18px;font-family:Roboto Mono,monospace;font-weight:600;margin-bottom:2px}@keyframes gentle-pulse-b3f29520{0%{box-shadow:0 0 #e6a23c66}70%{box-shadow:0 0 0 10px #e6a23c00}to{box-shadow:0 0 #e6a23c00}}[data-v-b3f29520] .el-icon{display:none}.execute-btn.running[data-v-b3f29520] .el-icon{color:#fff;animation:icon-attention-b3f29520 2s infinite;filter:drop-shadow(0 0 2px rgba(255,255,255,.5))}@keyframes icon-attention-b3f29520{0%{transform:scale(1);opacity:1}50%{transform:scale(1.2);opacity:.8}to{transform:scale(1);opacity:1.3}}.execute-btn.running[data-v-b3f29520]:hover .el-icon{animation:icon-attention-hover-b3f29520 2s infinite}@keyframes icon-attention-hover-b3f29520{0%{transform:scale(1.1);opacity:1}50%{transform:scale(1.4);opacity:.8}to{transform:scale(1.1);opacity:1.3}}@media (max-width: 768px){.control-btn[data-v-b3f29520]{gap:8px;padding:0 12px}.execute-btn[data-v-b3f29520]{gap:10px;padding:0 16px}}.code-editor-container[data-v-ac120c0c]{height:100%;display:flex;flex-direction:column;gap:16px}.toolbar[data-v-ac120c0c]{display:flex;gap:16px;align-items:center;justify-content:flex-start;margin-bottom:5px;margin-left:70px}.button-text[data-v-ac120c0c]{margin-left:4px}.editor-container[data-v-ac120c0c]{flex:1}[data-v-ac120c0c] .el-button{display:inline-flex;align-items:center;background-color:#454545;border-color:#454545;color:#fff}[data-v-ac120c0c] .el-button-group .el-button:first-child{background-color:#2b7d4d;border-color:#2b7d4d}[data-v-ac120c0c] .el-button-group .el-button:first-child:hover{background-color:#3a9463;border-color:#3a9463}[data-v-ac120c0c] .el-button:not(:first-child):hover{background-color:#666;border-color:#666;color:#fff}[data-v-ac120c0c] .el-dropdown-menu__item:not(.is-disabled):focus,[data-v-ac120c0c] .el-dropdown-menu__item:not(.is-disabled):hover{background-color:#9c9c9c;color:#232323;transition:all .1s ease}.header[data-v-336404fd]{height:60px;background-color:#fff;border-bottom:1px solid #dcdfe6;position:relative;padding:0 20px;display:flex;align-items:center;justify-content:space-between}.logo-container[data-v-336404fd]{height:100%;display:flex;align-items:center}.header-logo[data-v-336404fd]{height:28px;width:auto;object-fit:contain}.floating-trigger[data-v-336404fd]{position:absolute;top:0;left:50%;transform:translate(-50%);z-index:1}.trigger-button[data-v-336404fd]{display:flex;align-items:center;gap:8px;background:#333;padding:8px 16px;min-width:100px;height:32px;justify-content:center;border-radius:0 0 16px 16px;cursor:pointer;transition:all .3s}.trigger-button[data-v-336404fd]:hover{background:#666;padding-top:10px;min-width:120px}.code-icon[data-v-336404fd]{color:#fff}.trigger-text[data-v-336404fd]{color:#fff;font-size:16px;font-weight:500;margin-bottom:2px;margin-right:8px}.nav-links[data-v-336404fd]{display:flex;align-items:center;gap:4px;margin-left:12px;border-left:1px solid #e4e7ed;padding-left:12px;height:32px}.header-right[data-v-336404fd]{display:flex;align-items:center;gap:0}.header-icon-btn[data-v-336404fd]{padding:4px 8px;height:32px;border:none;background:transparent;color:#333;transition:all .2s ease;display:flex;align-items:center;gap:4px;text-decoration:none;border-radius:4px;font-size:14px}.header-icon-btn[data-v-336404fd]:hover{color:#000;background-color:#f5f5f5}.btn-text[data-v-336404fd]{font-size:18px;font-weight:400;color:#333}.header-icon-btn:hover .btn-text[data-v-336404fd]{color:#000}.user-section[data-v-336404fd]{display:flex;align-items:center;height:32px}.login-btn[data-v-336404fd]{height:38px;padding:0 16px;font-size:14px;font-weight:500;border-radius:6px;display:flex;align-items:center;gap:4px;background:linear-gradient(45deg,#1f7fbb,#671ab9);border:none;transition:all .3s ease}.login-btn[data-v-336404fd]:hover{transform:translateY(-1px);box-shadow:0 2px 8px #409eff33;background:linear-gradient(45deg,#238cce,#7c26d8)}.login-btn[data-v-336404fd]:active{transform:translateY(0)}.login-icon[data-v-336404fd]{margin-right:6px;margin-top:-2px}[data-v-336404fd] .cl-userButtonBox{height:32px}[data-v-336404fd] .cl-userButtonTrigger{padding:0;border-radius:4px;height:32px}[data-v-336404fd] .cl-userButtonTrigger:focus{outline:none!important;box-shadow:none!important}[data-v-336404fd] .cl-userButtonTrigger:focus-visible{outline:none!important;box-shadow:none!important}[data-v-336404fd] .cl-userButtonAvatarBox{width:32px;height:32px;margin:6px}@media (max-width: 768px){.nav-links[data-v-336404fd]{margin-left:8px;padding-left:8px}.btn-text[data-v-336404fd]{display:none}.header-icon-btn[data-v-336404fd]{padding:4px}.quick-start-tip[data-v-336404fd]{padding:6px}.quick-start-tip[data-v-336404fd]:hover{padding-right:24px}.quick-start-tip span[data-v-336404fd]{display:none}}.github-icon[data-v-336404fd]{font-size:20px;width:20px;height:20px}.logo-section[data-v-336404fd]{display:flex;align-items:center;gap:16px}.quick-start-tip[data-v-336404fd]{position:relative;display:flex;align-items:center;gap:4px;padding:6px 12px;background-color:#f0f9ff;border-radius:6px;color:#1890ff;text-decoration:none;font-size:14px;transition:all .3s ease}.tip-content[data-v-336404fd]{display:flex;align-items:center;gap:4px}.close-btn[data-v-336404fd]{opacity:0;position:absolute;right:5px;top:50%;transform:translateY(-50%);background:transparent;border:none;color:#1890ff;cursor:pointer;padding:2px;border-radius:4px;display:flex;align-items:center;justify-content:center;margin-top:.5px}.quick-start-tip[data-v-336404fd]:hover{background-color:#e6f4ff;padding-right:10px}.quick-start-tip:hover .close-btn[data-v-336404fd]{opacity:1}.quick-start-tip:hover .tip-content[data-v-336404fd]{padding-right:18px}.close-btn[data-v-336404fd]:hover{background-color:#e6f4ff;color:#0076e4}.layout-container[data-v-7d9d9379]{height:100vh;display:flex;flex-direction:column}.main-area[data-v-7d9d9379]{flex:1;padding:20px;overflow:hidden;position:relative;display:flex;justify-content:center;align-items:center}.footer[data-v-7d9d9379]{background-color:#fff;padding:10px;box-shadow:0 -4px 10px #0000001a}.footer-content[data-v-7d9d9379]{max-width:800px;margin:0 auto;display:flex;justify-content:center}[data-v-7d9d9379] .el-drawer{background:#1e1e1e}[data-v-7d9d9379] .el-drawer__header{margin-bottom:0;padding:16px 70px;background:#333;color:#fff;font-weight:600;text-align:center;height:28px;position:relative}[data-v-7d9d9379] .el-drawer__close-btn{position:absolute;right:20px;top:50%;transform:translateY(-50%);color:#fff;font-size:20px;width:32px;height:32px;border-radius:6px;display:flex;align-items:center;justify-content:center;transition:all .3s ease}[data-v-7d9d9379] .el-drawer__close-btn:hover{background-color:#ffffff1a}.floating-camera[data-v-7d9d9379]{position:absolute;top:20px;left:20px;z-index:10;width:240px;height:240px;aspect-ratio:1;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#969696b3;border:2px solid #a3a3a3ae;border-radius:3px;box-shadow:0 4px 12px #00000026}@media (max-width: 1200px){.scene-container-wrapper[data-v-7d9d9379]{width:80vw}.floating-camera[data-v-7d9d9379]{width:150px;height:150px;aspect-ratio:1}}@media (max-width: 768px){.scene-container-wrapper[data-v-7d9d9379]{width:90vw;height:50vh}.floating-camera[data-v-7d9d9379]{width:120px;height:120px;aspect-ratio:1}.footer-content[data-v-7d9d9379]{max-width:100%;padding:0 10px}}@media (max-width: 480px){.scene-container-wrapper[data-v-7d9d9379]{width:95vw;height:45vh}.floating-camera[data-v-7d9d9379]{width:80px;height:80px;aspect-ratio:1}.main-area[data-v-7d9d9379]{padding:10px}}.scene-container-wrapper[data-v-7d9d9379]{position:relative;width:100%;height:100%;min-height:400px;border-radius:12px;overflow:hidden;box-shadow:0 2px 12px #0000001a,0 0 6px #0000001f;background-color:#f5f5f508}.scene-container-wrapper[data-v-7d9d9379]:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:1;background:linear-gradient(to right,#fff0 90%,#ffffff4d,#fff),linear-gradient(to bottom,#fff0 90%,#ffffff4d,#fff),linear-gradient(to left,#fff0 90%,#ffffff4d,#fff),linear-gradient(to top,#fff0 90%,#ffffff4d,#fff)}.scene-list[data-v-7d9d9379]{display:flex;flex-direction:column;gap:10px;padding:10px}.scene-item[data-v-7d9d9379]{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border:1px solid #e4e7ed;border-radius:8px;cursor:pointer;position:relative;overflow:hidden}.delete-btn[data-v-7d9d9379]{opacity:0;transition:all .3s ease;position:absolute;right:12px;top:50%;transform:translateY(-50%);border:none;background-color:#f56c6ce6;color:#fff;width:32px;height:32px;padding:0;display:flex;align-items:center;justify-content:center;border-radius:4px}.delete-btn[data-v-7d9d9379]:hover{background-color:#f56c6c}.scene-item:hover .delete-btn[data-v-7d9d9379]{opacity:1}.scene-content[data-v-7d9d9379]{display:flex;align-items:center;gap:16px;flex:1;padding-right:40px}.scene-item:hover .scene-content[data-v-7d9d9379]{opacity:.8}.refresh-btn[data-v-7d9d9379]{padding:12px;font-size:16px;margin-right:20px}[data-v-7d9d9379] .el-drawer__header{padding:16px 0;margin-bottom:0}[data-v-7d9d9379] .code-editor-drawer.el-drawer{background:#1e1e1e}[data-v-7d9d9379] .code-editor-drawer .el-drawer__header{margin-bottom:0;padding:16px 70px;background:#333;color:#fff;font-weight:600;text-align:center;height:28px;position:relative}[data-v-7d9d9379] .code-editor-drawer .el-drawer__close-btn{position:absolute;right:20px;top:50%;transform:translateY(-50%);color:#fff;font-size:20px;width:32px;height:32px;border-radius:6px;display:flex;align-items:center;justify-content:center;transition:all .3s ease}[data-v-7d9d9379] .code-editor-drawer .el-drawer__close-btn:hover{background-color:#ffffff1a}[data-v-7d9d9379] .scene-manager-drawer.el-drawer{background:#fff}[data-v-7d9d9379] .scene-manager-drawer .el-drawer__header{margin-bottom:0;padding:16px 20px;background:#f5f7fa;color:#303133;font-weight:600;border-bottom:1px solid #e4e7ed}.scene-list[data-v-7d9d9379]{display:flex;flex-direction:column;gap:12px;padding:16px}.scene-item[data-v-7d9d9379]{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border:1px solid #e4e7ed;border-radius:8px;cursor:pointer;transition:all .3s ease}.scene-content[data-v-7d9d9379]{display:flex;align-items:center;gap:16px;flex:1}.scene-item[data-v-7d9d9379]:hover{background-color:#f5f7fa;transform:translateY(-2px);box-shadow:0 2px 12px #0000001a}.scene-preview[data-v-7d9d9379]{width:80px;height:80px;object-fit:cover;border-radius:6px;border:1px solid #e4e7ed}.drawer-header[data-v-7d9d9379]{display:flex;align-items:center;justify-content:flex-start;gap:20px;width:100%;padding:0 20px;margin-left:5px}.refresh-btn[data-v-7d9d9379]{margin-right:40px}[data-v-7d9d9379] .scene-manager-drawer .el-drawer__close-btn{color:#303133;font-size:20px;width:32px;height:32px;border-radius:6px;display:flex;align-items:center;justify-content:center;transition:all .3s ease}[data-v-7d9d9379] .scene-manager-drawer .el-drawer__close-btn:hover{background-color:#0000001a;color:#970a0a}.scene-info[data-v-7d9d9379]{display:flex;flex-direction:column;gap:8px}.scene-name[data-v-7d9d9379]{font-weight:700}.scene-dimensions[data-v-7d9d9379],.scene-created-at[data-v-7d9d9379]{color:#909399}.login-prompt[data-v-7d9d9379],.empty-scene-prompt[data-v-7d9d9379]{display:flex;justify-content:center;align-items:center;height:200px;color:#909399;font-size:16px}
