@import "https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Manrope:wght@400;500;600;700;800&family=Noto+Sans+SC:wght@300;400;500;600;700&display=swap";:root{color:#eef2ff;font-synthesis:none;text-rendering:optimizelegibility;font-optical-sizing:auto;--muted:#737f98;--line:#94a5cd24;--cyan:#88e0db;--panel:#0e1422;background:#070b14;font-family:Manrope,Noto Sans SC,sans-serif;font-size:14px;font-weight:400}*{box-sizing:border-box;scrollbar-width:thin;scrollbar-color:#8be2d86b #0a101c8c}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#0a101c8c;border-radius:8px}::-webkit-scrollbar-thumb{background:#8be2d857;border:2px solid #0a101cb8;border-radius:8px}::-webkit-scrollbar-thumb:hover{background:#8be2d89e}::-webkit-scrollbar-corner{background:0 0}body{overscroll-behavior-x:none;background:radial-gradient(at 53% 52%,#20325330,#0000 47%),radial-gradient(at 91% 10%,#1d375a1c,#0000 32%),#070b14;min-width:360px;min-height:100vh;margin:0}button,textarea{font:inherit}button{color:inherit}.app-shell{max-width:1600px;min-height:100vh;margin:auto;padding:0 64px;position:relative;overflow:hidden}.app-shell:before{content:"";pointer-events:none;opacity:.19;z-index:-1;background-image:radial-gradient(1px 1px at 12% 15%,#dbe8ff 60%,#0000),radial-gradient(1px 1px at 77% 12%,#a2d9ff 60%,#0000),radial-gradient(1px 1px at 34% 54%,#dbe8ff 60%,#0000),radial-gradient(1px 1px at 91% 68%,#dbe8ff 60%,#0000),radial-gradient(1px 1px at 18% 82%,#a2d9ff 60%,#0000);position:absolute;inset:0}.topbar{border-bottom:1px solid #94a5cd1c;justify-content:space-between;align-items:center;height:76px;display:flex}.brand{color:#f1f4ff;letter-spacing:1.8px;align-items:center;gap:10px;font-size:12px;font-weight:800;text-decoration:none;display:flex}.brand-logo{object-fit:contain;object-position:left center;width:144px;height:38px;margin-right:4px;display:block}.brand-light{color:#fff;letter-spacing:1px;font-size:17px;font-weight:500;line-height:1;position:relative;top:2px}.top-center,.version,.section-index,.step-badge,.upload-meta,.char-count,.stage-foot,.preview-status,.footer-caption,.footer-tech,.page-footer,.process-title span,.status-id{font-family:DM Mono,monospace}.top-center{letter-spacing:1.5px;color:#8994aa;align-items:center;gap:9px;font-size:9px;display:flex}.live-dot,.eyebrow>span:first-child{background:#8be2d8;border-radius:50%;width:6px;height:6px;box-shadow:0 0 10px #7be2d3}.top-right{align-items:center;gap:14px;display:flex}.current-job-toggle{color:#a6e8e0;cursor:pointer;background:#8be2d814;border:1px solid #8be2d84d;border-radius:3px;padding:6px 9px;font:9px DM Mono,monospace}.history-toggle{color:#aebbd0;cursor:pointer;background:#0f17278c;border:1px solid #8fa0c433;border-radius:3px;padding:6px 9px;font:9px DM Mono,monospace}.history-toggle b{color:#8de0d7;margin-left:4px;font-weight:500}.history-drawer{z-index:8;background:#0a101cfa;border:1px solid #8fa0c440;border-radius:4px;width:350px;max-height:calc(100vh - 84px);padding:15px;position:absolute;top:64px;right:64px;overflow-y:auto;box-shadow:0 18px 50px #00000059}.history-heading{color:#dce5f5;justify-content:space-between;align-items:center;margin-bottom:10px;font-size:13px;display:flex}.history-heading button{color:#8290a8;cursor:pointer;background:0 0;border:0;font-size:20px}.history-filter{color:#dbe4f2;background:#090f1a;border:1px solid #8fa0c429;border-radius:3px;outline:none;width:100%;height:29px;margin-bottom:4px;padding:0 9px;font-size:9px}.history-filter:focus{border-color:#8be2d880}.history-empty{color:#78859b;padding:15px 0;font-size:10px}.active-job-item{color:#a8d9d5;text-align:left;cursor:pointer;background:#8be2d80d;border:1px solid #8be2d82e;border-radius:3px;align-items:center;gap:8px;width:100%;margin-bottom:5px;padding:8px;font-size:9px;display:flex}.history-item{border-top:1px solid var(--line);align-items:center;gap:8px;padding:10px 0;display:flex}.history-main{text-align:left;min-width:0;color:inherit;cursor:pointer;background:0 0;border:0;flex:1;align-items:center;gap:9px;display:flex}.history-main span:last-child{min-width:0}.history-main b,.history-main small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.history-main b{color:#d2dbea;font-size:10px;font-weight:500}.history-main small{color:#78859b;margin-top:4px;font:8px DM Mono,monospace}.history-state{background:#e3b178;border-radius:50%;flex:none;width:6px;height:6px}.history-state.succeeded{background:#8de0d7;box-shadow:0 0 7px #8de0d7}.history-state.failed{background:#e77}.history-delete{color:#a97878;cursor:pointer;background:0 0;border:0;font-size:9px}.version{letter-spacing:1px;color:#9de2dc;border:1px solid #8be2d852;padding:4px 7px;font-size:9px}.top-divider{border-left:1px solid var(--line);height:14px}.engine{color:#6c7891;letter-spacing:.8px;font-size:8px}.engine b{color:#b6c0d2;font-weight:500}.intro{text-align:center;padding:48px 0 34px}.eyebrow{color:#93a0b6;letter-spacing:2.2px;justify-content:center;align-items:center;gap:10px;font:10px DM Mono,monospace;display:flex}.eyebrow-line{background:#8be2d866;width:25px;height:1px}h1{letter-spacing:-1.2px;margin:17px 0 8px;font-size:40px;font-weight:500;line-height:1.35}h1 span{color:#8bddd5}.intro>p{color:#8993a8;margin:0;font-size:13px;font-weight:300}.workspace{grid-template-columns:365px minmax(0,1fr);gap:18px;max-width:1320px;margin:0 auto;display:grid}.control-panel,.preview-panel{background:#0d1320e0;border:1px solid #8fa0c426;border-radius:5px}.control-panel{padding:24px 23px 20px}.panel-heading,.preview-header{justify-content:space-between;align-items:flex-start;display:flex}.section-index{letter-spacing:1.3px;color:#79869d;font-size:9px}.panel-heading h2,.preview-header h2{letter-spacing:.1px;margin:7px 0 0;font-size:17px;font-weight:500}.step-badge{color:#8fe0d7;letter-spacing:.4px;border:1px solid #8fe0d73d;padding:6px 8px;font-size:8px}.step-badge i{color:#738198;font-style:normal}.field-label{color:#d1d8e6;margin:22px 0 9px;font-size:11px}.field-label>span{color:#77839a;margin-left:4px;font-size:9px}.model-source{color:#718097;font:8px DM Mono,monospace}.generation-types{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.generation-type{color:#aebbd0;text-align:left;cursor:pointer;background:#0f172780;border:1px solid #8fa0c42e;border-radius:3px;min-height:39px;padding:7px 9px;font-size:10px;transition:border .2s,background .2s,color .2s}.generation-type:hover{color:#dceeea;border-color:#8be2d880}.generation-type.selected{color:#a6e8e0;background:#8be2d81a;border-color:#8be2d8b3}.generation-type.unavailable{color:#707d94;border-style:dashed}.generation-type small{color:#66748c;margin-top:3px;font-size:8px;display:block}.generation-type.selected small{color:#8ba9a7}.multi-view-upload{cursor:pointer;border:1px dashed #8fa0c440;border-radius:3px;flex-wrap:wrap;align-items:center;gap:7px;min-height:139px;padding:10px;display:flex}.view-card{flex-direction:column;gap:5px;width:82px;display:flex}.view-card img{object-fit:cover;border-radius:3px;width:82px;height:70px}.view-card select{color:#cbd6e7;background:#090f1a;border:1px solid #8fa0c429;width:100%;height:23px;font-size:8px}.upload-box{cursor:pointer;border:1px dashed #8fa0c440;border-radius:3px;flex-direction:column;justify-content:center;align-items:center;height:139px;transition:border .2s,background .2s;display:flex;position:relative;overflow:hidden}.upload-box:hover{background:#8be2d806;border-color:#8be2d89e}.upload-icon{color:#90e1d8;place-items:center;width:30px;height:30px;margin-bottom:9px;display:grid}.upload-icon svg{width:23px;height:23px}.upload-title{color:#a7b3c7;font-size:11px}.upload-title span{color:#75829a}.upload-meta{color:#68758b;letter-spacing:.4px;margin-top:9px;font-size:8px}.upload-meta i{vertical-align:middle;background:#7a879e;border-radius:50%;width:2px;height:2px;margin:0 6px;display:inline-block}.image-preview{object-fit:contain;background:#00000040;width:100%;height:100%;padding:5px}.image-overlay{color:#e0e7f3;background:linear-gradient(#0000,#03070ee6);justify-content:space-between;align-items:center;padding:8px 10px;font-size:10px;display:flex;position:absolute;bottom:0;left:0;right:0}.image-overlay span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.remove-image{color:#9ce0da;cursor:pointer;background:0 0;border:0;padding:4px 0 4px 12px}.field-heading{justify-content:space-between;align-items:center;display:flex}.char-count{color:#657188;font-size:8px}.control-panel textarea{resize:vertical;color:#e2e8f4;background:#090f1a;border:1px solid #8fa0c429;border-radius:3px;outline:none;width:100%;height:107px;padding:11px 12px;font-size:10px;line-height:1.8}.control-panel textarea:focus{border-color:#8be2d880}.control-panel textarea::placeholder{color:#647087}.texture-options{color:#aebbd0;flex-wrap:wrap;gap:9px 12px;margin-top:11px;font-size:10px;display:flex}.texture-options label{align-items:center;gap:5px;display:flex}.texture-options input{accent-color:#8bddd5}.texture-options select{color:#cbd6e7;background:#090f1a;border:1px solid #8fa0c429;border-radius:3px;height:24px;margin-left:3px;font-size:10px}.upload-progress{color:#a8d9d5;background:#8be2d80e;border:1px solid #8be2d833;border-radius:3px;margin-top:12px;padding:9px 10px;font-size:10px}.upload-progress-heading{justify-content:space-between;margin-bottom:7px;display:flex}.upload-progress-heading b{color:#8de0d7;font:9px DM Mono,monospace}.upload-progress-track{background:#8fa0c42e;border-radius:4px;height:4px;overflow:hidden}.upload-progress-track i{background:#8bddd5;height:100%;transition:width .15s;display:block}.prompt-hint{color:#77849a;align-items:center;gap:7px;margin-top:8px;font-size:9px;display:flex}.hint-star{color:#8edbd4}.notice{color:#edbd93;background:#f5ae700f;border:1px solid #f5ae703d;margin-top:12px;padding:9px 10px;font-size:10px;line-height:1.6}.job-status{color:#a8d9d5;background:#8be2d80e;border:1px solid #8be2d829;align-items:center;gap:8px;margin-top:12px;padding:9px 10px;font-size:10px;display:flex}.status-indicator{background:#8be2d8;border-radius:50%;width:6px;height:6px;animation:1.7s infinite pulse;box-shadow:0 0 8px #8be2d8}.job-status.succeeded .status-indicator{animation:none}.job-status.failed{color:#e7a7a7;background:#ec75750d}.job-status.failed .status-indicator{box-shadow:none;background:#e77;animation:none}.status-id{opacity:.62;margin-left:auto;font-size:8px}.generate-button{color:#081316;letter-spacing:.3px;cursor:pointer;background:linear-gradient(105deg,#a0e7dc,#79cfc8);border:0;border-radius:3px;justify-content:center;align-items:center;width:100%;height:42px;margin-top:18px;font-size:11px;font-weight:700;transition:filter .2s,transform .2s;display:flex;position:relative}.generate-button:hover:not(:disabled){filter:brightness(1.08);transform:translateY(-1px)}.generate-button:disabled{opacity:.43;cursor:not-allowed}.button-arrow{font-size:15px;font-weight:400;position:absolute;right:13px}.secure-note{text-align:center;color:#78849a;margin-top:10px;font-size:9px}.secure-note span{color:#8bdcd4;margin-right:3px}.panel-separator{border-top:1px solid var(--line);margin:19px 0 15px}.process-title{color:#bec7d7;justify-content:space-between;font-size:10px;display:flex}.process-title span{color:#768299;letter-spacing:.8px;font-size:8px}.process-steps{grid-template-columns:1fr 20px 1fr;align-items:center;margin-top:14px;display:grid}.process-step{color:#aeb9ca;align-items:center;gap:9px;font-size:9px;display:flex}.process-step>span{color:#8291a7;border:1px solid #94a5cd33;border-radius:50%;place-items:center;width:25px;height:25px;font:9px DM Mono,monospace;display:grid}.process-step.active>span{color:#8adbd4;border-color:#8adbd4}.process-step small{color:#727e93;margin-top:3px;font-size:8px;display:block}.step-connector{background:var(--line);height:1px;margin:0 4px}.preview-panel{flex-direction:column;min-height:530px;padding:20px 21px 13px;display:flex}.preview-header{align-items:center;margin-bottom:14px}.preview-header h2{font-size:15px}.preview-status{color:#78849a;align-items:center;gap:7px;font-size:9px;display:flex}.preview-status>span{background:#707c91;border-radius:50%;width:5px;height:5px}.preview-status>span.status-ready{background:#8de0d7;box-shadow:0 0 8px #8de0d7}.download-link{color:#a4e7df;white-space:nowrap;cursor:pointer;background:0 0;border:1px solid #8be2d845;border-radius:3px;margin-left:8px;padding:6px 8px;font:8px DM Mono,monospace;text-decoration:none}.download-link:hover:not(:disabled){background:#8be2d814}.download-link:disabled{opacity:.65;cursor:wait}.viewport{touch-action:none;overscroll-behavior:none;-webkit-user-select:none;user-select:none;background:radial-gradient(at 50% 53%,#1b2b4880,#0000 54%),#080d1b;border:1px solid #8fa0c41a;border-radius:3px;flex:1;min-height:420px;position:relative;overflow:hidden}.viewport canvas{width:100%;height:100%;display:block;position:absolute;inset:0}.viewport-tools{z-index:2;color:#7c89a0;align-items:center;gap:7px;font-size:8px;display:flex;position:absolute;top:12px;right:13px}.viewport-tools button{color:#a5d9d5;cursor:pointer;background:#0f1727cc;border:1px solid #8fa0c433;border-radius:3px;width:25px;height:25px;font-size:17px}.empty-stage{z-index:1;pointer-events:none;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.orbit-art{place-items:center;width:170px;height:145px;margin-bottom:4px;display:grid;position:relative}.core-cube{color:#a3eae2;text-shadow:0 0 18px #85e8de;border:1px solid #8be2d8a6;place-items:center;width:49px;height:49px;font-size:39px;display:grid;transform:rotate(45deg);box-shadow:0 0 42px #69d3ce1f,inset 0 0 21px #69d3ce1a}.orbit{border:1px solid #7ca3d130;border-radius:50%;width:150px;height:50px;position:absolute;transform:rotate(-25deg)}.orbit-b{border-color:#8be2d82e;width:120px;height:150px;transform:rotate(34deg)}.spark{background:#a8eee6;border-radius:50%;width:3px;height:3px;position:absolute;box-shadow:0 0 9px #a8eee6}.spark-a{top:18px;left:41px}.spark-b{top:65px;right:13px}.spark-c{bottom:15px;left:52px}.stage-title{color:#c7d1e1;margin-top:12px;font-size:12px}.empty-stage>p{color:#76849a;margin:8px 0 0;font-size:9px}.stage-foot{color:#66758e;letter-spacing:1px;justify-content:space-between;font-size:7px;display:flex;position:absolute;bottom:13px;left:14px;right:14px}.model-error{z-index:4;color:#e6b7a3;text-align:center;background:#0c111df0;border:1px solid #f2a4884d;padding:12px;font-size:10px;position:absolute;top:50%;left:20%;right:20%;transform:translateY(-50%)}.model-loading{z-index:3;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);color:#c7d7e8;background:#070c18c7;flex-direction:column;justify-content:center;align-items:center;gap:11px;display:flex;position:absolute;inset:0}.model-loading strong{font-size:13px;font-weight:500}.model-loading>span{color:#8d9bb1;font-size:10px}.loading-spinner{border:2px solid #8be2d833;border-top-color:#8bddd5;border-radius:50%;width:26px;height:26px;animation:.8s linear infinite spin}.loading-track{background:#8fa0c42e;border-radius:3px;width:min(220px,55%);height:3px;overflow:hidden}.loading-track i{background:#8bddd5;height:100%;transition:width .2s;display:block}@keyframes spin{to{transform:rotate(360deg)}}.preview-footer{justify-content:space-between;align-items:center;padding:12px 1px 0;display:flex}.footer-caption{color:#8490a5;letter-spacing:.7px;font-size:8px}.caption-square{background:#8bddd5;width:6px;height:6px;margin-right:7px;display:inline-block}.footer-caption i{color:#4d5a70;margin:0 4px;font-style:normal}.footer-tech{color:#68758b;letter-spacing:.5px;gap:12px;font-size:7px;display:flex}.page-footer{letter-spacing:1px;color:#657087;border-top:1px solid #94a5cd17;justify-content:space-between;max-width:1320px;margin:19px auto 0;padding:12px 0 16px;font-size:7px;display:flex}.page-footer i{color:#8cdcd5;margin:0 4px;font-style:normal}.drop-overlay{z-index:10;color:#a9ebe4;pointer-events:none;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#070e18eb;border:2px dashed #8be2d8;place-items:center;font-size:20px;display:grid;position:fixed;inset:0}@keyframes pulse{50%{opacity:.35;box-shadow:0 0 2px #8be2d8}}@media (width>=1500px){.workspace{grid-template-columns:390px minmax(0,1fr)}.preview-panel{min-height:570px}.viewport{min-height:455px}}@media (width<=900px){.app-shell{padding:0 28px}.workspace{grid-template-columns:minmax(250px,280px) minmax(0,1fr);gap:12px}.control-panel{padding:18px 15px}.preview-panel{min-height:450px;padding:16px 14px 11px}.viewport{min-height:345px}.engine{display:none}}@media (width<=700px){.app-shell{padding:0 17px}.topbar{height:61px}.top-center{display:none}.top-right{gap:8px}.intro{padding:37px 0 27px}h1{font-size:31px}.intro>p{max-width:340px;margin:0 auto;font-size:11px;line-height:1.8}.workspace{grid-template-columns:1fr;gap:12px}.control-panel{padding:20px}.preview-panel{min-height:430px}.viewport{min-height:340px}.page-footer{font-size:6px}.process-steps{max-width:340px}}@media (width<=420px){.app-shell{padding:0 12px}.brand{font-size:10px}.version{font-size:8px}.intro h1{font-size:28px}.control-panel{padding:17px}.preview-panel{min-height:400px}.viewport{min-height:310px}.footer-tech{gap:7px}.preview-footer{gap:6px}.footer-caption{font-size:7px}}.top-center{font-size:10px}.current-job-toggle,.history-toggle{padding:8px 11px;font-size:11px}.history-drawer{width:380px;padding:18px}.history-filter{height:36px;margin:5px 0 8px;padding:0 11px;font-size:12px}.history-empty{font-size:13px}.active-job-item{gap:10px;padding:10px;font-size:12px}.history-item{gap:10px;padding:12px 0}.history-main{gap:11px}.history-main b{font-size:13px}.history-main small{margin-top:5px;font-size:11px}.history-delete,.history-retry{padding:6px;font-size:12px}.section-index{font-size:10px}.step-badge{padding:7px 9px;font-size:10px}.field-label{margin:24px 0 11px;font-size:13px}.field-label>span{font-size:11px}.generation-types{gap:9px}.generation-type{min-height:44px;padding:9px 11px;font-size:12px}.generation-type small{font-size:10px}.multi-view-upload,.upload-box{min-height:150px}.upload-title{font-size:13px}.upload-meta{font-size:10px}.view-card{width:96px}.view-card img{width:96px;height:82px}.view-card select{height:30px;font-size:11px}.field-heading .field-label{margin:22px 0 10px}.char-count{font-size:10px}.control-panel textarea{padding:12px 13px;font-size:13px;line-height:1.75}.prompt-hint{gap:8px;font-size:11px;line-height:1.5}.notice{padding:11px 12px;font-size:12px;line-height:1.6}.job-status{gap:9px;padding:11px 12px;font-size:12px}.status-id{font-size:10px}.generate-button{height:46px;font-size:13px}.secure-note{font-size:11px}.process-title{font-size:12px}.process-title span{font-size:10px}.process-step{gap:10px;font-size:11px}.process-step small{font-size:10px}.preview-header h2,.panel-heading h2{font-size:18px}.preview-status{gap:8px;font-size:11px}.download-link{padding:7px 9px;font-size:10px}.viewport-tools{gap:9px;font-size:10px}.viewport-tools button{width:30px;height:30px;font-size:19px}.empty-stage .stage-title{font-size:14px}.empty-stage>p{font-size:11px}.stage-foot{font-size:9px}.preview-footer{padding-top:14px}.footer-caption{font-size:10px}.footer-tech,.page-footer{font-size:9px}@media (width<=700px){.top-center{font-size:10px}.history-drawer{width:auto;left:17px;right:17px}.generation-type{font-size:12px}.page-footer{font-size:8px}}@media (width<=420px){.history-drawer{left:12px;right:12px}.control-panel textarea,.history-main b{font-size:12px}.page-footer{font-size:7px}}
