:root{--bg:#f5f7fb;--ink:#202d44;--muted:#8993a5;--line:#e9edf4;--blue:#3468ed;--light:#f0f5ff}*{box-sizing:border-box}body{margin:0;font:14px 'Noto Sans SC','Microsoft YaHei',sans-serif;color:var(--ink);background:var(--bg)}button,input,select{font:inherit}button,a,input,select,summary,label[role=button]{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}button:focus-visible,a:focus-visible,summary:focus-visible,label:focus-visible{outline:3px solid #9ab7ff;outline-offset:3px}a{color:inherit;text-decoration:none}[hidden]{display:none!important}.sidebar{position:fixed;inset:0 auto 0 0;width:224px;background:#fff;border-right:1px solid var(--line);padding:32px 20px;z-index:3}.brand{display:flex;gap:10px;align-items:center;margin:0 0 57px 9px;font-weight:800;font-size:25px;letter-spacing:2px}.brand-icon{color:white;background:var(--blue);width:39px;height:42px;display:grid;place-items:center;border-radius:12px;font-size:33px;font-weight:400}.brand div>span{display:block;font-size:7px;letter-spacing:1.4px;font-weight:500;color:#9aa5b5;margin-top:2px}.workspace-label{font-size:10px;color:#a1a9b7;padding:0 17px;margin-bottom:16px;letter-spacing:2px}.nav{border:0;background:none;color:#798499;display:flex;width:100%;align-items:center;gap:13px;padding:14px 17px;margin:7px 0;border-radius:9px;text-align:left;font-size:13px}.nav>span:first-child{font-size:18px}.nav.active{background:#edf3ff;color:var(--blue);font-weight:600}.nav>span:last-child:not(:first-child){margin-left:auto;font-size:10px}.nav-dot{width:6px;height:6px;border-radius:50%;background:var(--blue)}.sidebar-bottom{position:absolute;bottom:31px;left:36px;font-size:11px;color:#7c879a}.tiny-dot{display:inline-block;width:6px;height:6px;background:#7e98bd;border-radius:50%;margin-right:7px}.sidebar-bottom .tiny-dot{background:#3bb787}.sidebar-bottom p{font-size:10px;color:#a5aebc;margin:10px 0 20px}.version{font-size:9px;letter-spacing:1.5px;color:#b0b8c6}main{margin-left:224px}header{height:76px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 42px}.breadcrumb{font-size:11px;color:#949eb0;display:flex;gap:16px;align-items:center}.breadcrumb strong{font-weight:500;color:#5f6d82}.connection{font-size:11px;border:1px solid var(--line);background:#fff;border-radius:7px;padding:9px 12px;color:#7d8a9e}.connection.ready .tiny-dot{background:#25aa78}.page{max-width:1510px;margin:auto;padding:36px 42px 0}.intro{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.eyebrow{font-size:9px;color:var(--blue);letter-spacing:2.3px;font-weight:600;margin-bottom:11px}h1{font-size:30px;letter-spacing:-.8px;margin:0;font-weight:700}h1>span{color:var(--blue)}.intro p{font-size:12px;color:#8b95a6;margin:12px 0 0}.intro-badge{display:flex;gap:13px;align-items:center;color:#5f7396;font-size:11px;padding:14px 19px;border:1px solid #e3eaf5;border-radius:10px;background:linear-gradient(120deg,#fff,#f0f4ff)}.intro-badge>span{font-size:30px;color:#6d91ed}.intro-badge small{display:block;font-size:9px;color:#96a2b7;margin-top:6px}.setup-banner{display:flex;align-items:center;gap:15px;background:#edf3ff;border:1px solid #dce7ff;border-radius:10px;padding:15px 20px;margin-bottom:22px}.setup-banner>span{font-size:25px;color:var(--blue)}.setup-banner strong{font-size:12px;font-weight:500;color:#446598}.setup-banner p{font-size:11px;color:#7e93b4;margin:5px 0 0}.setup-banner button{margin-left:auto;white-space:nowrap;border:0;color:var(--blue);background:none;font-size:11px}.editor-grid{display:grid;grid-template-columns:1.04fr 1fr;gap:22px;align-items:start}.panel{background:#fff;border:1px solid var(--line);border-radius:13px;box-shadow:0 3px 10px #24396303}.upload-panel,.options-panel{padding:24px}.section-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:23px}.section-heading>div{display:flex;align-items:center;gap:10px}.step{font-size:10px;color:var(--blue);background:var(--light);border-radius:5px;padding:5px 6px}h2{font-size:15px;margin:0;font-weight:600}.section-heading>span{font-size:10px;color:#9aa4b4}.dropzone{display:flex;flex-direction:column;align-items:center;justify-content:center;border:1.5px dashed #cfdcf3;border-radius:10px;background:linear-gradient(150deg,#f8fbff,#f4f7ff);min-height:257px;cursor:pointer;transition:.2s}.dropzone.dragging,.dropzone:hover{border-color:var(--blue);background:#edf3ff}.upload-icon{width:60px;height:60px;background:#fff;border-radius:16px;box-shadow:0 4px 16px #3468ed12;display:grid;place-items:center;color:var(--blue);margin-bottom:16px}.upload-icon svg{width:31px;height:31px}.dropzone h3{font-size:15px;font-weight:500;margin:0}.dropzone p{font-size:11px;color:#9aa5b8;margin:10px 0 20px}.dropzone p span{color:var(--blue)}.formats{font-size:9px;letter-spacing:.6px;color:#9ca9bf}.upload-limits{display:flex;align-items:center;gap:11px;font-size:10px;color:#9ba7ba;margin-top:11px}.upload-limits i{width:3px;height:3px;border-radius:50%;background:#c1cbdc}.selected-heading{display:flex;justify-content:space-between;margin:24px 0 12px;font-size:11px;color:#728099}.selected-heading b{font-size:10px;background:#f1f4f9;border-radius:4px;padding:2px 6px;margin-left:5px;color:#8a96a9}.text-button{padding:0;background:none;border:0;color:#9aa5b6;font-size:10px}.file-list{min-height:99px;max-height:262px;overflow:auto}.empty-files{text-align:center;font-size:11px;color:#bac2cf;padding:31px 0}.file-item{display:flex;align-items:center;gap:11px;padding:11px 0;border-bottom:1px solid #f1f3f8}.file-icon{color:#6c8fe6;background:#edf3ff;border-radius:7px;width:33px;height:39px;display:grid;place-items:center;font-size:18px;flex-shrink:0}.file-info{min-width:0;flex:1}.file-info strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:500}.file-info small{display:block;color:#99a4b6;font-size:9px;margin-top:5px}.file-info small.error{color:#d36a6a}.remove-file{border:0;background:none;color:#9ba6b7;font-size:18px;padding:8px}.storage-note{display:flex;gap:12px;align-items:center;background:#f8fafc;border-radius:8px;padding:14px;margin-top:13px}.storage-note>span{font-size:24px;color:#95a9c6}.storage-note p{font-size:11px;margin:0;color:#72829a}.storage-note small{display:block;font-size:9px;color:#a0aabc;margin-top:6px}.field-label{display:block;font-size:11px;font-weight:500;margin-bottom:10px;color:#66748b}.scene-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.scene{border:1px solid #e7ecf4;border-radius:7px;background:#fff;text-align:left;padding:11px 9px;position:relative;min-height:67px}.scene strong{font-size:10px;font-weight:500;display:block;color:#65738a}.scene small{display:block;font-size:8px;color:#a5afbf;margin-top:6px;line-height:1.5}.scene.selected{border-color:#789df7;background:#f4f7ff}.scene.selected strong{color:var(--blue)}.scene.selected:after{content:'✓';position:absolute;top:7px;right:7px;color:var(--blue);font-size:9px}.field-top{display:flex;justify-content:space-between;margin-top:22px}.field-top>span{font-size:9px;color:#a6afbd}.segmented{display:flex;background:#f5f7fb;border:1px solid #edf0f6;border-radius:7px;padding:4px;gap:3px}.segmented button{flex:1;border:0;background:none;border-radius:5px;padding:9px 0;font-size:11px;color:#8b96a8;white-space:nowrap}.segmented button.selected{background:#fff;color:var(--blue);box-shadow:0 2px 5px #1827450a;font-weight:600}.segmented small{font-size:6px;background:#e8eefb;color:#819cd3;padding:2px 3px;border-radius:3px}.two-columns{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:22px}select,input[type=number]{width:100%;border:1px solid #e5eaf2;border-radius:6px;background:#fff;padding:10px 11px;color:#718097;font-size:11px;outline:none}select:focus,input:focus{border-color:#8caaff}.field{margin-top:15px}.advanced{margin-top:22px;border-top:1px solid var(--line);padding-top:17px}.advanced summary{font-size:11px;color:#75829a;cursor:pointer}.advanced summary span{float:right;font-size:9px;color:#a4adbd}.advanced-content{padding-top:18px}.advanced-content .field-label:not(:first-child){margin-top:14px}.check{display:flex;align-items:center;font-size:11px;color:#7e8ba0;margin-top:16px;gap:6px}.check input{accent-color:var(--blue)}.hint{font-size:11px;color:#8995a8;line-height:1.9}.cost-note{font-size:9px;line-height:1.8;color:#a0aabd;margin:21px 0 15px}.primary{display:flex;align-items:center;justify-content:center;gap:9px;background:var(--blue);color:#fff;border:0;border-radius:7px;min-height:44px;width:100%;font-size:12px;box-shadow:0 4px 9px #3468ed18}.primary:hover:enabled{background:#2859d9}.primary>span:last-child{margin-left:auto}.primary>span:first-child{font-size:18px}.primary{padding:0 17px}.submit-note{text-align:center;font-size:9px;color:#aab2c1;margin:11px 0 0}.tasks-panel{margin-top:24px;overflow:hidden}.tasks-header{display:flex;justify-content:space-between;align-items:center;padding:23px 24px 18px}.tasks-header>div:first-child{display:flex;gap:12px;align-items:center}.tasks-header>div>span{color:#a4aebd;font-size:10px}.task-actions{display:flex;gap:10px}.task-actions select{width:105px;font-size:10px;padding:7px 10px}.secondary{border:1px solid #e4e9f2;border-radius:6px;background:white;color:#7c899d;font-size:10px;padding:8px 12px}.task-stats{display:flex;gap:27px;padding:0 24px 19px;font-size:10px;color:#8d99ad;border-bottom:1px solid var(--line)}.task-stats>div{display:flex;align-items:center;gap:7px}.task-stats b{color:#526581;font-size:11px;font-weight:500;margin-left:4px}.stat-dot{width:5px;height:5px;border-radius:50%}.blue{background:#7399ef}.amber{background:#e6b96a}.green{background:#59bd9a}.concurrency{margin-left:auto;font-size:9px;color:#a3adbd}table{border-collapse:collapse;width:100%;text-align:left;font-size:11px}th{font-size:9px;color:#a0aabd;font-weight:400;padding:13px 24px;background:#fcfdff;white-space:nowrap}td{padding:17px 24px;border-top:1px solid #f0f3f8;color:#8391a7;vertical-align:middle}td:first-child{max-width:245px}td strong{display:block;font-size:11px;font-weight:500;color:#596b86;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}td small{display:block;font-size:9px;margin-top:6px;color:#a0aabd}.status{display:inline-block;padding:4px 8px;border-radius:4px;font-size:9px;background:#f0f4fb;color:#7290c1}.status.completed{background:#eaf7f1;color:#379d76}.status.failed{background:#fff0ee;color:#cb746d}.status.processing,.status.uploading,.status.submitting{background:#edf3ff;color:#507de2}.task-error{max-width:240px;color:#cd7970!important;white-space:normal;line-height:1.7}.progress{height:3px;border-radius:3px;background:#e8eef9;width:90px;margin-top:7px;overflow:hidden}.progress i{display:block;background:#7fa0ec;height:100%}.task-download,.task-retry{border:0;background:none;color:var(--blue);padding:5px 0;font-size:10px;white-space:nowrap}.tasks-empty{text-align:center;padding:28px 0 36px}.tasks-empty>div{display:grid;place-items:center;width:42px;height:42px;background:#f4f7fb;color:#bbc8dc;font-size:23px;border-radius:11px;margin:0 auto 13px}.tasks-empty h3{font-size:12px;font-weight:400;color:#8d9bb1;margin:0}.tasks-empty p{font-size:10px;color:#b0b8c7;margin:9px 0 0}footer{display:flex;justify-content:space-between;color:#aab4c5;font-size:9px;padding:24px 0}dialog{border:1px solid var(--line);border-radius:14px;padding:25px;max-width:530px;width:calc(100% - 32px);color:var(--ink);box-shadow:0 20px 100px #20365630}dialog::backdrop{background:#1d2b4866;backdrop-filter:blur(3px)}.dialog-header{display:flex;align-items:center;justify-content:space-between}.dialog-header button{border:0;background:none;font-size:24px;color:#8996aa}dialog>p{font-size:12px;line-height:1.9;color:#7c8ba2}pre{white-space:pre-wrap;word-break:break-all;background:#f4f7fc;padding:16px;border-radius:7px;font-size:11px;line-height:1.9;color:#5b739c}.dialog-links{display:flex;gap:20px;font-size:11px;color:var(--blue);margin-top:20px}.confirm-actions{display:flex;gap:12px;margin-top:22px}.confirm-actions .primary{width:auto;flex:1}.confirm-actions .secondary{flex:1}.toast{position:fixed;bottom:28px;left:calc(50% + 100px);transform:translateX(-50%);background:#253651;color:#fff;border-radius:8px;padding:13px 20px;box-shadow:0 5px 30px #25365133;max-width:80vw;font-size:12px;z-index:10}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(min-width:1600px){.page{padding-top:44px}.dropzone{min-height:285px}.scene{min-height:74px}.scene strong{font-size:12px}.scene small{font-size:9px}.upload-panel,.options-panel{padding:28px}.file-list{min-height:118px}.intro{margin-bottom:36px}}
@media(max-width:1100px){.sidebar{width:190px;padding:30px 14px}.brand{margin-left:5px}.brand div>span{font-size:6px}main{margin-left:190px}.page{padding:25px 23px 0}header{padding:0 23px}.editor-grid{gap:16px}.upload-panel,.options-panel{padding:19px}.scene-grid{grid-template-columns:repeat(2,1fr)}.intro-badge{display:none}h1{font-size:27px}.task-stats{gap:14px}th,td{padding-left:15px;padding-right:15px}}
@media(max-width:780px){.sidebar{position:static;width:100%;height:65px;display:flex;align-items:center;padding:0 18px;border-bottom:1px solid var(--line)}.brand{margin:0 auto 0 0;font-size:21px}.brand-icon{width:31px;height:33px;font-size:27px}.workspace-label,.sidebar-bottom,.nav-dot,.brand div>span{display:none}.nav{width:auto;font-size:11px;padding:9px;margin-left:4px;gap:5px}.nav>span:first-child{font-size:14px}main{margin-left:0}header{height:52px;padding:0 20px}.page{padding:26px 18px 0}.intro{margin-bottom:24px}h1{font-size:25px}.editor-grid{grid-template-columns:1fr}.scene-grid{grid-template-columns:repeat(3,1fr)}.dropzone{min-height:230px}.file-list{min-height:55px}.empty-files{padding:15px}.tasks-panel{margin-top:18px}.tasks-header{padding:19px 16px}.task-stats{padding-left:16px;padding-right:16px;gap:13px}.task-stats .concurrency{display:none}.task-table-wrap{overflow:auto}table{min-width:650px}.setup-banner{padding:13px;gap:9px}.setup-banner p{font-size:10px}.setup-banner button{font-size:10px}footer{font-size:8px;gap:15px;line-height:1.8}.toast{left:50%}.advanced summary span{font-size:8px}}
