:root{--bg: #070a11;--bg-2: #0b1019;--panel: #0e1522;--card: #111a2b;--card-2: #16203a;--line: rgba(255, 255, 255, .07);--line-2: rgba(255, 255, 255, .13);--tx: #e9eefb;--tx-2: #98a6c2;--tx-3: #5f6d8a;--acc: #6d7cff;--acc-2: #22d3ee;--ok: #34d399;--warn: #fbbf24;--err: #f87171;--r: 14px;--r-sm: 9px;--gap: 13px;--shadow: 0 20px 44px -20px rgba(0, 0, 0, .9);--checker-a: #1b2436;--checker-b: #131b2a;color-scheme:dark}*{box-sizing:border-box}html[data-lang-flash] body{visibility:hidden}[hidden]{display:none!important}html,body{height:100%}body{margin:0;background:radial-gradient(1100px 620px at 78% -12%,rgba(109,124,255,.13),transparent 62%),radial-gradient(760px 520px at 4% 4%,rgba(34,211,238,.07),transparent 58%),var(--bg);color:var(--tx);font:14px/1.55 -apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,system-ui,sans-serif;-webkit-font-smoothing:antialiased;overflow:hidden}button,input,select{font:inherit;color:inherit}h1,h2,h3,p,dl,dd,dt,ul{margin:0}ul{padding:0;list-style:none}code,kbd{font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace}::-webkit-scrollbar{width:9px;height:9px}::-webkit-scrollbar-thumb{background:#ffffff1c;border-radius:99px;border:2px solid transparent;background-clip:content-box}::-webkit-scrollbar-thumb:hover{background:#fff3;background-clip:content-box}::-webkit-scrollbar-track{background:transparent}.app{height:100dvh;display:flex;flex-direction:column}.topbar{flex:0 0 auto;height:60px;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:0 16px;border-bottom:1px solid var(--line);background:linear-gradient(180deg,#101726db,#0a0f1999);backdrop-filter:blur(14px)}.brand{display:flex;align-items:center;gap:11px;min-width:0}.brand-mark{display:grid;place-items:center;filter:drop-shadow(0 6px 14px rgba(109,124,255,.4))}.brand-text{display:flex;flex-direction:column;line-height:1.25;min-width:0}.brand-text b{font-size:15.5px;letter-spacing:.2px}.brand-text i{font-style:normal;font-size:11.5px;color:var(--tx-3)}.topbar-right{display:flex;align-items:center;gap:12px;min-width:0}.topbar-badges{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.badge{display:inline-flex;align-items:center;gap:6px;padding:5px 11px;border-radius:99px;font-size:11.5px;color:var(--tx-2);border:1px solid var(--line-2);background:#ffffff09;white-space:nowrap}.badge-ok{color:#a7f3d0;border-color:#34d39952;background:#34d3991a}.lang-switch{display:inline-flex;gap:2px;padding:2px;flex:0 0 auto;border-radius:9px;background:#00000047;border:1px solid var(--line)}.lang-btn{appearance:none;background:none;cursor:pointer;border:1px solid transparent;border-radius:7px;color:var(--tx-3);font:inherit;font-size:11.5px;line-height:1;padding:5px 9px;white-space:nowrap;transition:color .15s,background .15s,border-color .15s}.lang-btn:hover{color:var(--tx);background:#ffffff0d}.lang-btn.is-on{color:var(--tx);background:#6d7cff2b;border-color:#6d7cff6b}.layout{flex:1 1 auto;min-height:0;display:grid;grid-template-columns:312px minmax(0,1fr) 336px;gap:var(--gap);padding:var(--gap) var(--gap) var(--gap)}.col{min-height:0;display:flex;flex-direction:column;gap:var(--gap);overflow-y:auto;overflow-x:hidden;padding-right:2px}.col-stage{overflow:hidden}.col-left,.col-right{scrollbar-gutter:stable}.card{background:linear-gradient(180deg,#ffffff09,#ffffff02),var(--card);border:1px solid var(--line);border-radius:var(--r);padding:14px;box-shadow:var(--shadow);flex:0 0 auto}.card-grow{flex:1 1 auto;display:flex;flex-direction:column;min-height:150px}.card-foot{background:none;box-shadow:none;border-style:dashed}.card-title{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:650;letter-spacing:.5px;text-transform:uppercase;color:var(--tx-2);margin-bottom:12px}.card-title .linkbtn{margin-left:auto}.step{display:grid;place-items:center;width:19px;height:19px;border-radius:6px;font-size:11px;font-weight:700;letter-spacing:0;color:#0a0f1a;background:linear-gradient(135deg,var(--acc),var(--acc-2))}.counter{margin-left:auto;min-width:22px;text-align:center;font-size:11px;padding:1px 7px;border-radius:99px;background:#ffffff14;color:var(--tx-2)}.cwrap{display:grid;grid-template-rows:0fr;transition:grid-template-rows .22s ease}[data-collapse].is-open>.cwrap{grid-template-rows:1fr}.card-body,.more-body{overflow:hidden;min-height:0;padding-inline:3px;margin-inline:-3px}.card-body>*:last-child,.more-body>*:last-child{margin-bottom:3px}[data-collapse]:not(.is-open) .card-body,[data-collapse]:not(.is-open) .more-body{pointer-events:none}.card-toggle{flex:1 1 auto;min-width:0;display:flex;align-items:center;gap:8px;min-height:26px;padding:0;background:none;border:0;cursor:pointer;color:inherit;font:inherit;letter-spacing:inherit;text-align:left}.card-toggle:hover .ct-label{color:var(--tx)}.card-toggle:focus-visible{outline:2px solid var(--acc);outline-offset:3px;border-radius:6px}.ct-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-sum{display:none;margin-left:auto;margin-right:6px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10.5px;font-weight:500;letter-spacing:0;text-transform:none;color:var(--tx-3);font-variant-numeric:tabular-nums;max-width:66%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card:not(.is-open) .card-sum{display:block}.card:not(.is-open) .card-title{margin-bottom:0}.card[data-collapse]:not(.is-open)>.card-title .linkbtn{display:none}.ct-chev{flex:0 0 auto;color:var(--tx-3);transition:transform .2s ease,color .15s;transform:rotate(-90deg)}.card.is-open>.card-title .ct-chev{margin-left:auto}[data-collapse].is-open>.card-title .ct-chev,[data-collapse].is-open>.more-toggle .ct-chev{transform:rotate(0)}.card-toggle:hover .ct-chev{color:var(--tx-2)}.more-toggle{width:100%;min-height:30px;display:flex;align-items:center;gap:6px;padding:5px 9px;background:#0000002e;border:1px solid var(--line);border-radius:var(--r-sm);cursor:pointer;color:var(--tx-2);font-size:11.5px;transition:background .15s,border-color .15s,color .15s}.more-toggle:hover{background:#ffffff0d;border-color:var(--line-2);color:var(--tx)}.more-toggle:focus-visible{outline:2px solid var(--acc);outline-offset:2px}.more-toggle .ct-chev{margin-left:0}.more-toggle>span:first-of-type{white-space:nowrap}.more-val{margin-left:auto;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10.5px;color:var(--tx-3);font-variant-numeric:tabular-nums;max-width:58%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.more-body>*:first-child{margin-top:8px}.more:not(:last-child){margin-bottom:13px}.dropzone{display:flex;flex-direction:column;align-items:center;gap:3px;padding:20px 14px 18px;text-align:center;cursor:pointer;border:1.5px dashed var(--line-2);border-radius:var(--r-sm);background:#ffffff05;color:var(--tx-3);transition:border-color .16s,background .16s,color .16s,transform .16s}.dropzone:hover,.dropzone:focus-visible{border-color:#6d7cff99;background:#6d7cff12;color:var(--acc);outline:none}.dropzone.is-over{border-color:var(--acc-2);background:#22d3ee1c;color:var(--acc-2);transform:scale(1.015)}.dropzone b{color:var(--tx);font-size:13.5px}.dropzone span{font-size:11.5px}.dropzone u{text-decoration-color:#6d7cff99;text-underline-offset:2px}.dropzone small{font-size:10.5px;color:var(--tx-3);opacity:.8}.dz-icon{margin-bottom:5px}kbd{padding:1px 5px;border-radius:4px;font-size:10.5px;border:1px solid var(--line-2);background:#ffffff12;color:var(--tx-2)}.samples-head{display:flex;align-items:center;justify-content:space-between;margin:13px 0 8px;font-size:11.5px;color:var(--tx-3)}.samples{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.sample{position:relative;aspect-ratio:1;overflow:hidden;cursor:pointer;padding:0;border:1px solid var(--line);border-radius:9px;background:#0b1220;transition:border-color .16s,transform .16s}.sample:hover{border-color:var(--acc);transform:translateY(-2px)}.sample img{width:100%;height:100%;object-fit:cover;display:block}.sample.is-loading{opacity:.5;pointer-events:none}.sample span{position:absolute;inset:auto 0 0;padding:3px 5px;font-size:9.5px;color:#dbe4f7;background:linear-gradient(transparent,#04070de6);text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.queue{display:flex;flex-direction:column;gap:6px;overflow-y:auto;flex:1 1 auto;min-height:0;margin-bottom:9px}.queue:empty{flex:0 0 auto;margin-bottom:0}.queue-empty{flex:1 1 auto;display:grid;place-items:center;font-size:11.5px;color:var(--tx-3)}.qitem{display:flex;align-items:center;gap:9px;padding:7px;border:1px solid var(--line);border-radius:var(--r-sm);background:#ffffff05;cursor:pointer;transition:border-color .15s,background .15s}.qitem:hover{border-color:var(--line-2);background:#ffffff0d}.qitem.is-active{border-color:#6d7cffa6;background:#6d7cff1f}.qitem.is-error{border-color:#f8717180}.qthumb{width:38px;height:38px;flex:0 0 auto;border-radius:7px;overflow:hidden;background-color:#0b1220;background-image:linear-gradient(45deg,var(--checker-a) 25%,transparent 25%,transparent 75%,var(--checker-a) 75%),linear-gradient(45deg,var(--checker-a) 25%,transparent 25%,transparent 75%,var(--checker-a) 75%);background-size:10px 10px;background-position:0 0,5px 5px}.qthumb img{width:100%;height:100%;object-fit:contain;display:block}.qmeta{min-width:0;flex:1 1 auto;display:flex;flex-direction:column}.qmeta b{font-size:11.5px;font-weight:550;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.qmeta span{font-size:10px;color:var(--tx-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.qstate{flex:0 0 auto;font-size:10px;padding:2px 6px;border-radius:99px;background:#ffffff12;color:var(--tx-3)}.qstate[data-s=done]{background:#34d39929;color:#a7f3d0}.qstate[data-s=running]{background:#6d7cff33;color:#c7cdff}.qstate[data-s=error]{background:#f871712e;color:#fecaca}.qdel{flex:0 0 auto;width:20px;height:20px;display:grid;place-items:center;border:none;background:none;color:var(--tx-3);cursor:pointer;border-radius:5px;font-size:13px;line-height:1}.qdel:hover{background:#f871712e;color:#fecaca}.queue-actions{display:flex;gap:7px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:9px 14px;border-radius:var(--r-sm);cursor:pointer;border:1px solid var(--line-2);background:#ffffff0d;color:var(--tx);font-size:12.5px;font-weight:550;white-space:nowrap;transition:background .15s,border-color .15s,transform .12s,opacity .15s}.btn:hover:not(:disabled){background:#ffffff1a;border-color:var(--line-2)}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{opacity:.4;cursor:not-allowed}.btn-primary{border-color:transparent;color:#080d16;background:linear-gradient(135deg,var(--acc),var(--acc-2));box-shadow:0 8px 22px -10px #6d7cffe6}.btn-primary:hover:not(:disabled){filter:brightness(1.08);background:linear-gradient(135deg,var(--acc),var(--acc-2))}.btn-ghost{background:#ffffff09}.btn-sm{padding:6px 10px;font-size:11.5px}.linkbtn{background:none;border:none;cursor:pointer;padding:2px 6px;color:var(--acc);font-size:11.5px;border-radius:5px;display:inline-flex;align-items:center;min-height:26px}.linkbtn:hover{background:#6d7cff24}.iconbtn{width:30px;height:30px;display:grid;place-items:center;border:1px solid var(--line);border-radius:8px;cursor:pointer;background:#ffffff09;color:var(--tx-2);transition:color .15s,border-color .15s,background .15s}.iconbtn:hover{color:var(--tx);border-color:var(--line-2)}.iconbtn[aria-pressed=true]{color:var(--acc);border-color:#6d7cff80;background:#6d7cff24}.seg{display:inline-flex;gap:3px;padding:3px;border-radius:10px;background:#00000047;border:1px solid var(--line)}.seg-block{display:grid;gap:6px;padding:6px;background:#0003}.seg-block#modelSeg{grid-template-columns:1fr 1fr;grid-auto-rows:1fr}.seg-block#deviceSeg{grid-template-columns:repeat(3,1fr)}.seg-block#bgSeg{grid-template-columns:1fr 1fr}.seg-item{display:flex;flex-direction:column;align-items:center;gap:1px;padding:7px 10px;cursor:pointer;border:1px solid transparent;border-radius:7px;background:transparent;color:var(--tx-2);font-size:12px;transition:all .15s}.seg-item b{font-weight:550}.seg-item i{font-style:normal;font-size:10px;color:var(--tx-3)}.seg-item:hover{color:var(--tx);background:#ffffff0d}.seg-item.is-on{color:var(--tx);background:#6d7cff2b;border-color:#6d7cff6b}.seg-item.is-on i{color:#c7cdffbf}.field{margin-bottom:13px}.field:last-child{margin-bottom:0}.field>label{display:block;font-size:11.5px;color:var(--tx-2);margin-bottom:6px}.field-note{font-size:10.5px;color:var(--tx-3);margin-top:7px;line-height:1.5}select{width:100%;padding:8px 10px;border-radius:var(--r-sm);cursor:pointer;border:1px solid var(--line-2);background:#0000004d;color:var(--tx);font-size:12.5px}select:focus-visible{outline:2px solid rgba(109,124,255,.6);outline-offset:1px}.slider{margin-bottom:15px}.slider:last-child{margin-bottom:0}.slider-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:6px}.slider-head label{font-size:12px;color:var(--tx-2)}.slider-head output{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11.5px;color:var(--acc-2);font-variant-numeric:tabular-nums}.slider-note{font-size:10.5px;color:var(--tx-3);margin-top:5px;line-height:1.5}input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:20px;background:none;cursor:pointer;margin:0}input[type=range]::-webkit-slider-runnable-track{height:4px;border-radius:99px;background:linear-gradient(90deg,var(--acc) var(--pct, 50%),rgba(255,255,255,.11) var(--pct, 50%))}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:14px;height:14px;margin-top:-5px;border-radius:50%;background:#fff;border:2px solid var(--acc);box-shadow:0 2px 8px #0009;transition:transform .12s}input[type=range]:hover::-webkit-slider-thumb{transform:scale(1.16)}input[type=range]::-moz-range-track{height:4px;border-radius:99px;background:#ffffff1c}input[type=range]::-moz-range-thumb{width:12px;height:12px;border-radius:50%;background:#fff;border:2px solid var(--acc)}.color-row{display:flex;align-items:center;gap:10px}input[type=color]{width:42px;height:32px;padding:2px;cursor:pointer;border:1px solid var(--line-2);border-radius:8px;background:#0000004d}.swatches{display:flex;gap:6px;flex-wrap:wrap}.swatches button{width:24px;height:24px;border-radius:7px;cursor:pointer;padding:0;background:var(--c);border:1px solid var(--line-2);transition:transform .12s,box-shadow .12s}.swatches button:hover{transform:scale(1.12);box-shadow:0 0 0 2px #6d7cff80}.export-actions{display:flex;flex-direction:column;gap:7px}.kv{display:flex;flex-direction:column;gap:5px}.kv>div{display:flex;justify-content:space-between;gap:10px;font-size:11.5px}.kv dt{color:var(--tx-3)}.kv dd{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--tx-2);text-align:right}.kv dd.ok{color:#a7f3d0}.kv dd.warn{color:var(--warn)}.kv dd#kvWeightSrc{min-width:0;max-width:62%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.foot-note{font-size:10.5px;color:var(--tx-3);margin-top:10px;line-height:1.6}.foot-note code{font-size:10px;padding:1px 4px;border-radius:4px;background:#ffffff12}.stage-toolbar{flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:11px}.toolbar-right{display:flex;align-items:center;gap:7px}.hint{font-size:11px;color:var(--tx-3);font-family:ui-monospace,Menlo,monospace}.stage{position:relative;flex:1 1 auto;min-height:0;border:1px solid var(--line);border-radius:var(--r);background:linear-gradient(160deg,#ffffff09,#00000029),var(--panel);overflow:hidden}.canvas-host{position:absolute;inset:0;display:block}.layer{position:absolute;inset:0;margin:auto;max-width:96%;max-height:96%;width:auto;height:auto;display:block;user-select:none;-webkit-user-drag:none}.layer-after{background-color:#141c2b;background-image:linear-gradient(45deg,var(--checker-a) 25%,transparent 25%,transparent 75%,var(--checker-a) 75%),linear-gradient(45deg,var(--checker-a) 25%,transparent 25%,transparent 75%,var(--checker-a) 75%);background-size:20px 20px;background-position:0 0,10px 10px;box-shadow:0 14px 40px -18px #000000f2}.no-checker .layer-after{background-image:none;background-color:#ffffff08}.layer-before{clip-path:inset(0 calc(100% - var(--split, 50%)) 0 0)}.view-after .layer-before,.view-after .split-handle,.view-after .stage-tag-l,.view-before .layer-after,.view-before .split-handle,.view-before .stage-tag-r{display:none}.is-actual{overflow:auto}.is-actual .layer{position:relative;inset:auto;margin:12px auto;max-width:none;max-height:none}.split-handle{position:absolute;top:0;bottom:0;left:var(--split, 50%);width:2px;margin-left:-1px;background:linear-gradient(180deg,transparent,var(--acc) 12%,var(--acc) 88%,transparent);cursor:ew-resize;z-index:4;touch-action:none}.split-knob{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:34px;height:34px;display:grid;place-items:center;border-radius:50%;color:#fff;background:linear-gradient(135deg,var(--acc),var(--acc-2));box-shadow:0 6px 20px #0009,0 0 0 3px #070a1199}.split-handle:hover .split-knob{transform:translate(-50%,-50%) scale(1.08)}.stage-tag{position:absolute;bottom:11px;z-index:3;padding:3px 10px;border-radius:99px;font-size:10.5px;letter-spacing:.4px;background:#06090fc7;border:1px solid var(--line-2);color:var(--tx-2);backdrop-filter:blur(8px);pointer-events:none}.stage-tag-l{left:11px}.stage-tag-r{right:11px}.empty-state{position:absolute;inset:0;z-index:5;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;padding:24px;text-align:center;color:var(--tx-3);background:radial-gradient(600px 300px at 50% 45%,rgba(109,124,255,.07),transparent 70%)}.empty-state b{font-size:15px;color:var(--tx-2)}.empty-state p{font-size:12px;max-width:400px;line-height:1.65}.empty-art{color:var(--acc);opacity:.75;margin-bottom:4px}.busy{position:absolute;inset:0;z-index:8;display:grid;place-items:center;background:#06090fc2;backdrop-filter:blur(6px)}.busy-inner{display:flex;flex-direction:column;align-items:center;gap:9px;width:min(320px,78%);text-align:center}.busy-inner b{font-size:13.5px}.busy-inner span{font-size:11.5px;color:var(--tx-2);font-family:ui-monospace,Menlo,monospace}.spinner{width:32px;height:32px;border-radius:50%;border:2.5px solid rgba(255,255,255,.13);border-top-color:var(--acc-2);animation:spin .85s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.progress{width:100%;height:4px;border-radius:99px;background:#ffffff1c;overflow:hidden}.progress>i{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,var(--acc),var(--acc-2));transition:width .25s}.metrics{flex:0 0 auto;display:grid;grid-template-columns:repeat(5,1fr);gap:1px;margin-top:11px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--line);overflow:hidden}.metric{display:flex;flex-direction:column;gap:2px;padding:8px 11px;background:var(--panel);min-width:0}.metric label{font-size:10px;color:var(--tx-3);letter-spacing:.3px}.metric b{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12.5px;font-weight:550;color:var(--tx);font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.toasts{position:fixed;bottom:18px;left:50%;transform:translate(-50%);z-index:100;display:flex;flex-direction:column;gap:8px;align-items:center;pointer-events:none;width:min(560px,92vw)}.toast{display:flex;align-items:center;gap:9px;padding:9px 15px;border-radius:99px;font-size:12.5px;background:#101726f5;border:1px solid var(--line-2);color:var(--tx);box-shadow:0 14px 34px -14px #000000e6;animation:toast-in .24s cubic-bezier(.22,1,.36,1);max-width:100%}.toast[data-kind=error]{border-color:#f8717180;color:#fecaca}.toast[data-kind=ok]{border-color:#34d39973;color:#a7f3d0}.toast em{font-style:normal;font-family:ui-monospace,Menlo,monospace;font-size:11.5px;opacity:.8}@keyframes toast-in{0%{opacity:0;transform:translateY(12px) scale(.97)}}.toast.is-out{opacity:0;transform:translateY(8px);transition:opacity .22s,transform .22s}@media(max-width:1360px){.layout{grid-template-columns:274px minmax(0,1fr) 306px}}@media(max-width:1120px){body{overflow:auto}.app{height:auto;min-height:100dvh}.layout{grid-template-columns:minmax(0,1fr)}.col{overflow:visible}.col-stage{order:-1}.stage{height:56vh;min-height:340px}.metrics{grid-template-columns:repeat(3,1fr)}.queue{max-height:260px}}@media(max-width:620px){.topbar{height:auto;flex-direction:column;align-items:flex-start;padding:11px 12px;gap:9px}.topbar-right{width:100%;flex-wrap:wrap;justify-content:space-between;row-gap:9px}.topbar-badges{justify-content:flex-start}.metrics{grid-template-columns:1fr 1fr}.stage{height:46vh}}@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;transition-duration:.01ms!important}}
