.top-nav[data-v-ff4cec67]{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:42px;padding:0 16px;border-bottom:1px solid var(--line);background:var(--nav-bg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);position:sticky;top:0;z-index:50;font-size:13px}.top-nav-left[data-v-ff4cec67]{display:flex;align-items:center;gap:28px;min-width:0}.brand-row[data-v-ff4cec67]{display:flex;align-items:center;gap:10px;flex:0 0 auto}.brand-mark[data-v-ff4cec67]{width:24px;height:24px;border-radius:6px;background:url(/brand-icon.svg) center / cover no-repeat;box-shadow:0 0 12px #38bdf866}.brand-name[data-v-ff4cec67]{font-size:14px;white-space:nowrap;background:linear-gradient(120deg,#38bdf8,#0ea5e9 35%,#06b6d4 65%,#67e8f9);-webkit-background-clip:text;background-clip:text;color:transparent;letter-spacing:1px}.top-nav-links[data-v-ff4cec67],.top-nav-right[data-v-ff4cec67]{display:flex;align-items:center;gap:6px;min-width:0}.top-nav-item[data-v-ff4cec67]{display:flex;align-items:center;gap:5px;min-height:30px;padding:4px 10px;border-radius:6px;font-size:13px;color:var(--muted);transition:background .15s,color .15s;white-space:nowrap}.top-nav-item[data-v-ff4cec67]:hover,.top-nav-item.active[data-v-ff4cec67]{color:var(--text);background:var(--btn-ai-bg)}.top-nav-dropdown[data-v-ff4cec67]{position:relative}.dropdown-trigger[data-v-ff4cec67]{border:0;background:transparent;font-family:inherit;cursor:pointer}.drop-arrow[data-v-ff4cec67]{transition:transform .2s}.top-nav-dropdown.open .drop-arrow[data-v-ff4cec67]{transform:rotate(180deg)}.dropdown-menu[data-v-ff4cec67]{position:absolute;top:calc(100% + 4px);left:0;min-width:172px;padding:4px;border:1px solid var(--panel-border);border-radius:8px;background:var(--dropdown-bg);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:var(--shadow-modal);z-index:100}.dropdown-item[data-v-ff4cec67]{display:flex;align-items:center;gap:8px;width:100%;padding:8px 12px;border:0;border-radius:5px;background:transparent;color:var(--muted);font-size:13px;cursor:pointer;text-align:left}.dropdown-item[data-v-ff4cec67]:hover{background:var(--btn-ai-bg);color:var(--text)}.user-pill[data-v-ff4cec67]{display:flex;align-items:center;gap:6px;min-width:0;max-width:220px;height:30px;padding:0 9px;border:1px solid var(--input-border);border-radius:6px;background:var(--input-bg);color:var(--muted);font-size:12px}.user-pill svg[data-v-ff4cec67]{flex:0 0 auto;color:var(--primary-strong)}.user-pill span[data-v-ff4cec67]{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.password-button[data-v-ff4cec67],.logout-button[data-v-ff4cec67]{width:30px;min-height:30px;padding:0;border-color:var(--input-border);background:var(--input-bg);color:var(--muted)}.password-button[data-v-ff4cec67]:hover{border-color:var(--line-strong);color:var(--primary-strong)}.logout-button[data-v-ff4cec67]:hover{border-color:var(--status-failed-border);color:var(--status-failed-text)}.auth-actions[data-v-ff4cec67]{flex:0 0 auto}.auth-link[data-v-ff4cec67]{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:30px;border:1px solid var(--input-border);border-radius:6px;padding:0 11px;font-size:13px;white-space:nowrap;transition:border-color .18s ease,background .18s ease,color .18s ease}.auth-link.ghost[data-v-ff4cec67]{color:var(--muted);background:var(--input-bg)}.auth-link.primary[data-v-ff4cec67]{border-color:var(--primary);color:#fff;background:var(--primary)}.auth-link[data-v-ff4cec67]:hover{border-color:var(--line-strong)}.nav-modal-overlay[data-v-ff4cec67]{position:fixed;inset:0;z-index:200;display:grid;place-items:center;padding:18px;background:var(--modal-overlay);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.nav-modal[data-v-ff4cec67]{width:min(420px,94vw);padding:16px;border:1px solid var(--panel-border);border-radius:8px;background:var(--modal-bg);box-shadow:var(--shadow-modal)}.nav-modal header[data-v-ff4cec67],.nav-modal footer[data-v-ff4cec67]{display:flex;align-items:center;justify-content:space-between;gap:10px}.nav-modal header[data-v-ff4cec67]{margin-bottom:14px}.nav-modal header button[data-v-ff4cec67]{width:28px;min-height:28px;padding:0}.nav-modal label[data-v-ff4cec67]{display:grid;gap:6px;margin-bottom:11px;color:var(--muted);font-size:12px}.nav-modal input[data-v-ff4cec67]{width:100%}.nav-modal footer[data-v-ff4cec67]{justify-content:flex-end;margin-top:14px}.nav-modal footer button[data-v-ff4cec67]{min-height:32px}.nav-modal footer .ghost[data-v-ff4cec67]{background:transparent}.nav-modal-error[data-v-ff4cec67]{margin:2px 0 0;color:var(--error-text);font-size:12px}.nav-modal-hint[data-v-ff4cec67]{margin:0 0 16px;color:var(--muted);font-size:13px}@media(max-width:820px){.top-nav[data-v-ff4cec67]{align-items:stretch;flex-direction:column;gap:8px;padding:8px 12px}.top-nav-left[data-v-ff4cec67],.top-nav-right[data-v-ff4cec67]{width:100%}.top-nav-left[data-v-ff4cec67]{gap:14px}.top-nav-links[data-v-ff4cec67]{overflow-x:auto;scrollbar-width:none}.top-nav-links[data-v-ff4cec67]::-webkit-scrollbar{display:none}.top-nav-item[data-v-ff4cec67]{flex:0 0 auto}.top-nav-right[data-v-ff4cec67]{justify-content:flex-end}}@media(max-width:520px){.top-nav-left[data-v-ff4cec67]{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px}.brand-mark[data-v-ff4cec67]{width:22px;height:22px}.brand-name[data-v-ff4cec67]{font-size:13px}.top-nav-item[data-v-ff4cec67]{min-height:32px;padding:4px 8px;font-size:12px}.user-pill[data-v-ff4cec67]{display:none}}.toast-backdrop[data-v-5bf8a3bf]{position:fixed;inset:0;z-index:199;background:var(--modal-overlay);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.toast-stack[data-v-5bf8a3bf]{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:200;display:grid;gap:8px;pointer-events:none}.toast-item[data-v-5bf8a3bf]{display:flex;align-items:center;gap:0;min-width:280px;max-width:420px;border:1px solid var(--panel-border);border-radius:10px;background:var(--modal-bg);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:var(--shadow-modal);color:var(--text);font-size:14px;font-weight:500;pointer-events:auto;overflow:hidden}.toast-bar[data-v-5bf8a3bf]{align-self:stretch;width:4px;flex-shrink:0;background:linear-gradient(180deg,var(--primary-strong),var(--primary))}.toast-text[data-v-5bf8a3bf]{flex:1;padding:14px 16px;text-align:center}.toast-close[data-v-5bf8a3bf]{flex-shrink:0;width:32px;min-height:32px;margin-right:4px;padding:0;border:none;border-radius:6px;background:transparent;color:var(--muted);cursor:pointer}.toast-close[data-v-5bf8a3bf]:hover{background:var(--btn-ai-bg);color:var(--text)}.login-guide-backdrop[data-v-5bf8a3bf]{position:fixed;inset:0;z-index:210;display:grid;place-items:center;padding:20px;background:radial-gradient(circle at 50% 34%,rgba(37,99,235,.16),transparent 24rem),var(--modal-overlay);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.login-guide-dialog[data-v-5bf8a3bf]{position:relative;display:grid;justify-items:center;gap:18px;width:min(430px,100%);border:1px solid var(--panel-border);border-radius:12px;padding:30px 30px 26px;background:linear-gradient(180deg,rgba(255,255,255,.96),var(--modal-bg));box-shadow:var(--shadow-modal);-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);overflow:hidden}.login-guide-dialog[data-v-5bf8a3bf]:before{content:"";position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(90deg,#f43f5e,var(--primary),#06b6d4)}.login-guide-close[data-v-5bf8a3bf]{position:absolute;top:14px;right:14px;display:inline-grid;place-items:center;width:32px;min-height:32px;padding:0;border:1px solid transparent;border-radius:8px;background:#ffffff7a;color:var(--muted);transition:border-color .18s ease,background .18s ease,color .18s ease}.login-guide-close[data-v-5bf8a3bf]:hover{border-color:var(--button-hover-border);background:var(--btn-ai-bg);color:var(--primary-strong)}.login-guide-dialog h2[data-v-5bf8a3bf]{margin:0;width:100%;padding-right:34px;color:#334155;font-size:15px;font-weight:400;line-height:1.45}.login-guide-actions[data-v-5bf8a3bf]{display:grid;grid-template-columns:1fr 1fr;gap:10px;width:100%}.login-guide-actions button[data-v-5bf8a3bf]{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:30px;border-radius:6px;padding:0 11px;font-size:13px;font-weight:400;white-space:nowrap;transition:transform .18s ease,border-color .18s ease,background .18s ease,color .18s ease,box-shadow .18s ease}.login-guide-primary[data-v-5bf8a3bf]{border-color:var(--primary);color:#fff;background:linear-gradient(135deg,var(--primary-strong),var(--primary));box-shadow:0 14px 30px #2563eb38}.login-guide-secondary[data-v-5bf8a3bf]{border-color:var(--button-border);background:var(--button-bg);color:var(--button-text)}.login-guide-actions button[data-v-5bf8a3bf]:hover:not(:disabled){transform:translateY(-1px);border-color:var(--button-hover-border)}@media(max-width:520px){.login-guide-dialog[data-v-5bf8a3bf]{padding:28px 18px 18px}.login-guide-actions[data-v-5bf8a3bf]{grid-template-columns:1fr}.login-guide-dialog h2[data-v-5bf8a3bf]{font-size:20px}}.backdrop-enter-active[data-v-5bf8a3bf]{transition:opacity .2s}.backdrop-leave-active[data-v-5bf8a3bf]{transition:opacity .15s}.backdrop-enter-from[data-v-5bf8a3bf],.backdrop-leave-to[data-v-5bf8a3bf]{opacity:0}.toast-enter-active[data-v-5bf8a3bf]{transition:all .25s cubic-bezier(.34,1.56,.64,1)}.toast-leave-active[data-v-5bf8a3bf]{transition:all .12s ease-in}.toast-enter-from[data-v-5bf8a3bf]{opacity:0;transform:scale(.85) translateY(12px)}.toast-leave-to[data-v-5bf8a3bf]{opacity:0;transform:scale(.9)}.home-shell[data-v-976211d7]{max-width:960px;min-height:calc(100dvh - 42px);margin:0 auto;padding:48px 24px 64px}.welcome[data-v-976211d7]{text-align:center;margin-bottom:42px}.welcome-icon[data-v-976211d7]{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;margin-bottom:20px;border:1px solid var(--line-strong);border-radius:14px;background:var(--btn-ai-bg);color:var(--primary-strong);box-shadow:var(--shadow-panel)}.welcome-greeting[data-v-976211d7]{margin:0 0 6px;font-size:18px;color:var(--text)}.welcome-greeting strong[data-v-976211d7]{color:var(--primary-strong);font-weight:600}.welcome-hint[data-v-976211d7]{margin:0;font-size:14px;color:var(--muted)}.quick-nav[data-v-976211d7]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:38px}.nav-card[data-v-976211d7]{display:flex;align-items:center;gap:14px;min-height:86px;width:100%;padding:16px 18px;border:1px solid var(--panel-border);border-radius:8px;background:var(--panel-bg);cursor:pointer;text-align:left;transition:border-color .2s,transform .2s,box-shadow .2s}.nav-card.primary[data-v-976211d7]{border-color:var(--line-strong);background:var(--btn-ai-bg)}.nav-card[data-v-976211d7]:hover{border-color:var(--line-strong);transform:translateY(-2px);box-shadow:var(--shadow-panel)}.nav-card-icon[data-v-976211d7]{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:8px;background:var(--btn-ai-bg);color:var(--primary-strong)}.nav-card-body[data-v-976211d7]{min-width:0}.nav-card-body strong[data-v-976211d7]{display:block;margin-bottom:4px;color:var(--text);font-size:14px}.nav-card-body span[data-v-976211d7]{display:block;color:var(--muted);font-size:12px;line-height:1.45}.recent-section[data-v-976211d7]{display:grid;gap:14px}.section-head[data-v-976211d7]{display:flex;align-items:center;justify-content:space-between;gap:12px}.section-head h2[data-v-976211d7]{margin:0;font-size:16px}.section-head button[data-v-976211d7],.empty-cta[data-v-976211d7]{min-height:32px;padding:0 12px;font-size:12px}.task-list[data-v-976211d7]{overflow:hidden;border:1px solid var(--panel-border);border-radius:8px;background:var(--panel-bg)}.task-row[data-v-976211d7]{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:14px;width:100%;min-height:58px;padding:12px 14px;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;color:var(--text);text-align:left}.task-row[data-v-976211d7]:last-child{border-bottom:0}.task-row[data-v-976211d7]:hover{background:var(--btn-ai-bg)}.task-main[data-v-976211d7]{display:grid;gap:4px;min-width:0}.task-main strong[data-v-976211d7],.task-main span[data-v-976211d7]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-main strong[data-v-976211d7]{font-size:13px}.task-main span[data-v-976211d7],.task-time[data-v-976211d7]{color:var(--muted);font-size:12px}.status-chip[data-v-976211d7]{display:inline-flex;align-items:center;border-radius:999px;padding:2px 10px;font-size:12px}.status-chip.succeeded[data-v-976211d7]{color:var(--status-succeeded-text);background:var(--status-succeeded-bg);border:1px solid var(--status-succeeded-border)}.status-chip.failed[data-v-976211d7]{color:var(--status-failed-text);background:var(--status-failed-bg);border:1px solid var(--status-failed-border)}.status-chip.running[data-v-976211d7],.status-chip.pending[data-v-976211d7]{color:var(--status-pending-text);background:var(--status-pending-bg);border:1px solid var(--status-pending-border)}.empty-state[data-v-976211d7]{display:grid;place-items:center;gap:12px;min-height:170px;padding:28px;border:1px dashed var(--input-border);border-radius:8px;background:var(--panel-bg);color:var(--muted);text-align:center}.empty-state p[data-v-976211d7]{margin:0}@media(max-width:820px){.home-shell[data-v-976211d7]{padding:32px 16px 48px}.quick-nav[data-v-976211d7]{grid-template-columns:1fr}.task-row[data-v-976211d7]{grid-template-columns:minmax(0,1fr) auto}.task-time[data-v-976211d7]{display:none}}.wizard-stepper[data-v-971d9c41]{display:flex;align-items:center;justify-content:center;gap:0;padding:0;margin:0 0 28px}.stepper-node[data-v-971d9c41]{display:flex;align-items:center;gap:10px;border:none;border-radius:8px;padding:8px 14px 8px 8px;background:transparent;color:var(--muted);font-size:13px;cursor:pointer;transition:color .2s,background .2s;position:relative}.stepper-node[data-v-971d9c41]:disabled{cursor:default;opacity:.5}.stepper-node[data-v-971d9c41]:not(:disabled):hover{color:var(--text);background:var(--btn-ai-bg)}.stepper-node[data-v-971d9c41]:not(:last-child):after{content:"";position:absolute;right:-2px;top:50%;transform:translateY(-50%);width:28px;height:1px;background:var(--input-border)}.stepper-node.done[data-v-971d9c41]:not(:last-child):after{background:var(--line-strong)}.stepper-dot[data-v-971d9c41]{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;border:1.5px solid var(--input-border);background:transparent;flex-shrink:0;transition:border-color .2s,background .2s,box-shadow .2s}.stepper-node.done .stepper-dot[data-v-971d9c41]{border-color:var(--line-strong);background:var(--btn-ai-bg);color:var(--primary-strong)}.stepper-node.current .stepper-dot[data-v-971d9c41]{border-color:var(--primary);background:var(--btn-ai-bg);color:var(--primary-strong)}.stepper-num[data-v-971d9c41]{font-size:11px;font-weight:600;line-height:1}.stepper-label[data-v-971d9c41]{white-space:nowrap;font-size:13px}.stepper-node.current .stepper-label[data-v-971d9c41]{color:var(--text);font-weight:500}.stepper-node.done .stepper-label[data-v-971d9c41]{color:var(--primary-strong)}@media(max-width:640px){.wizard-stepper[data-v-971d9c41]{gap:0;overflow-x:auto;justify-content:flex-start;padding-bottom:4px}.stepper-node[data-v-971d9c41]{flex-shrink:0;padding:6px 10px 6px 6px}.stepper-label[data-v-971d9c41]{font-size:12px}}.structure-scroll[data-v-933ad507]{max-height:360px;overflow-y:auto}.add-dropdown[data-v-933ad507]{border:1px solid var(--line);border-radius:6px;background:var(--surface-2);margin-bottom:8px;max-height:200px;overflow-y:auto}.add-dropdown-head[data-v-933ad507]{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;font-size:12px;color:var(--muted);border-bottom:1px solid var(--line)}.add-option[data-v-933ad507]{display:flex;align-items:center;justify-content:space-between;width:100%;border:none;border-radius:0;background:transparent;color:var(--text);font-size:13px;padding:8px 10px;cursor:pointer}.add-option[data-v-933ad507]:hover{background:var(--btn-ai-bg)}.btn-del[data-v-933ad507]{border-color:var(--status-failed-border);color:var(--danger);width:28px;padding:0}.lightbox-overlay[data-v-df1cee12]{position:fixed;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;background:var(--drawer-overlay);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);cursor:pointer}.lightbox-close[data-v-df1cee12]{position:absolute;top:16px;right:16px;z-index:10;width:40px;height:40px;border-radius:8px;border:1px solid var(--input-border);background:var(--modal-bg);color:var(--muted);cursor:pointer;display:flex;align-items:center;justify-content:center}.lightbox-close[data-v-df1cee12]:hover{border-color:var(--status-failed-border);color:var(--status-failed-text)}.lightbox-img[data-v-df1cee12]{max-width:calc(100vw - 80px);max-height:calc(100dvh - 80px);object-fit:contain;border-radius:4px;cursor:default}.cursor-zoom[data-v-44a5bc49]{cursor:zoom-in}.progress-section[data-v-44a5bc49]{margin-bottom:12px}.progress-text[data-v-44a5bc49]{display:flex;justify-content:space-between;font-size:12px;color:var(--muted);margin-bottom:6px}.progress-track[data-v-44a5bc49]{height:6px;border-radius:3px;background:var(--input-border);overflow:hidden}.progress-fill[data-v-44a5bc49]{height:100%;border-radius:3px;background:var(--primary);transition:width .3s ease}.feedback-input[data-v-44a5bc49]{width:100%;height:28px;font-size:11px;margin-top:4px}.asset-scroll[data-v-44a5bc49]{flex:1 1 auto;overflow-y:auto;min-height:0;overscroll-behavior:contain}.preview-panel[data-v-44a5bc49]{display:flex;flex-direction:column;height:100%;min-height:0;overflow:hidden}.asset-grid[data-v-44a5bc49]{padding-bottom:4px}.retry-btn[data-v-44a5bc49]{margin-top:10px}.modal-overlay[data-v-44a5bc49]{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:24px;background:var(--modal-overlay);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.modal-card[data-v-44a5bc49]{width:min(360px,100%);border:1px solid var(--panel-border);border-radius:12px;background:var(--modal-bg);box-shadow:var(--shadow-modal)}.modal-header[data-v-44a5bc49]{display:flex;align-items:center;justify-content:space-between;padding:18px 20px 14px}.modal-header h2[data-v-44a5bc49]{font-size:16px;color:var(--text)}.modal-close[data-v-44a5bc49]{width:34px;height:34px;padding:0;border-color:var(--input-border);background:var(--input-bg);color:var(--muted);border-radius:6px}.wizard-shell[data-v-7073a8b7]{min-height:calc(100dvh - 42px);display:flex;flex-direction:column;max-width:880px;margin:0 auto;padding:28px 24px 32px}.wizard-loading[data-v-7073a8b7]{flex:1;display:flex;align-items:center;justify-content:center;color:var(--primary-strong)}.wizard-header[data-v-7073a8b7]{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:6px}.wizard-header-left[data-v-7073a8b7]{display:flex;align-items:center;gap:14px;min-width:0}.wizard-header h1[data-v-7073a8b7]{margin:0;font-size:18px;white-space:nowrap}.wizard-task-badge[data-v-7073a8b7]{max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border:1px solid var(--input-border);border-radius:6px;padding:4px 10px;color:var(--muted);background:var(--card-bg);font-size:12px}.platform-bar[data-v-7073a8b7]{display:flex;align-items:center;gap:8px;margin-bottom:16px;flex-wrap:wrap}.platform-label[data-v-7073a8b7]{font-size:12px;color:var(--muted);margin-right:4px}.platform-chip[data-v-7073a8b7]{min-height:30px;padding:0 14px;font-size:12px;border:1px solid var(--input-border);border-radius:6px;background:var(--card-bg);color:var(--muted);cursor:pointer;transition:border-color .18s,color .18s,background .18s}.platform-chip[data-v-7073a8b7]:hover:not(:disabled){border-color:var(--line-strong);color:var(--text)}.platform-chip.active[data-v-7073a8b7]{border-color:var(--primary);color:var(--primary-strong);background:var(--btn-ai-bg)}.wizard-content[data-v-7073a8b7]{flex:1 1 auto;position:relative;height:calc(100dvh - 150px);max-height:calc(100dvh - 150px);overflow-y:auto;overscroll-behavior:contain;min-height:0;padding:4px 60px}.wizard-step[data-v-7073a8b7]{animation:step-in-7073a8b7 .2s ease;min-height:0}.wizard-step-fill[data-v-7073a8b7]{display:flex;flex-direction:column;height:100%;min-height:0}@keyframes step-in-7073a8b7{0%{opacity:.6;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.nav-fab[data-v-7073a8b7]{position:absolute;top:50%;transform:translateY(-50%);z-index:10;width:40px;height:40px;border-radius:50%;border:1px solid var(--input-border);background:var(--panel-bg);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--muted);cursor:pointer;display:flex;align-items:center;justify-content:center}.nav-fab[data-v-7073a8b7]:hover{transform:translateY(-50%);border-color:var(--primary);color:var(--primary-strong);background:var(--btn-ai-bg)}.nav-fab-left[data-v-7073a8b7]{left:8px}.nav-fab-right[data-v-7073a8b7]{right:8px}.wiz-btn[data-v-7073a8b7]{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:36px;border:1px solid var(--button-border);border-radius:6px;padding:0 16px;font-size:13px;cursor:pointer}.wiz-btn-ghost[data-v-7073a8b7]{color:var(--muted);background:transparent;border-color:var(--input-border)}.toast-stack[data-v-7073a8b7]{display:flex;flex-direction:column;gap:6px;margin-bottom:8px}.toast-item[data-v-7073a8b7]{background:var(--status-failed-bg);border:1px solid var(--status-failed-border);border-radius:6px;padding:6px 12px;font-size:12px;color:var(--status-failed-text);cursor:pointer}@media(max-width:640px){.wizard-shell[data-v-7073a8b7]{padding:20px 14px 24px}.wizard-header[data-v-7073a8b7]{flex-direction:column;align-items:flex-start}.wizard-header-left[data-v-7073a8b7]{flex-wrap:wrap}.wizard-content[data-v-7073a8b7]{padding:4px 48px}}.task-log-shell[data-v-c061e893]{display:flex;flex-direction:column;max-width:1100px;height:calc(100dvh - 42px);margin:0 auto;padding:28px 24px 16px;overflow:hidden}.task-log-header[data-v-c061e893]{display:flex;align-items:center;gap:16px;margin-bottom:16px;flex-wrap:wrap;flex-shrink:0}.task-log-header h1[data-v-c061e893]{margin:0}.task-id-search[data-v-c061e893]{display:flex;align-items:center;gap:8px;width:min(320px,100%);height:32px;padding:0 10px;border:1px solid var(--input-border);border-radius:6px;background:var(--input-bg);color:var(--muted)}.task-id-search input[data-v-c061e893]{flex:1;min-width:0;height:auto;padding:0;border:0;background:transparent;color:var(--text);font-size:13px;outline:none}.toolbar-btn[data-v-c061e893]{min-height:32px;padding:0 12px;font-size:12px;border-color:var(--input-border);background:var(--input-bg);color:var(--muted)}.task-table-wrap[data-v-c061e893]{position:relative;flex:1;min-height:0;overflow:auto;border:1px solid var(--panel-border);border-radius:8px;background:var(--panel-bg)}.task-table-wrap.loading .task-table[data-v-c061e893]{opacity:.55}.table-loading[data-v-c061e893]{position:absolute;inset:0;z-index:3;display:flex;align-items:center;justify-content:center;gap:8px;background:var(--modal-overlay);color:var(--muted);font-size:13px;pointer-events:none}.task-table[data-v-c061e893]{width:100%;min-width:720px;border-collapse:collapse}.task-table th[data-v-c061e893],.task-table td[data-v-c061e893]{padding:12px 14px;text-align:left;border-bottom:1px solid var(--line);font-size:13px}.task-table tr:last-child td[data-v-c061e893]{border-bottom:0}.task-table th[data-v-c061e893]{color:var(--muted);font-size:12px;font-weight:600;background:var(--table-head-bg)}.job-id-cell[data-v-c061e893]{max-width:220px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}.type-cell[data-v-c061e893]{white-space:nowrap;width:1%}.time-cell[data-v-c061e893]{white-space:nowrap;color:var(--muted);font-size:12px}.product-cell[data-v-c061e893]{max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.action-cell[data-v-c061e893]{display:flex;gap:8px;white-space:nowrap;width:1%}.action-cell button[data-v-c061e893]{min-height:32px;padding:4px 10px;font-size:12px;white-space:nowrap}.empty-copy[data-v-c061e893]{text-align:center;padding:40px}.status-chip[data-v-c061e893]{display:inline-flex;align-items:center;width:fit-content;border-radius:999px;padding:2px 10px;font-size:12px}.status-chip.succeeded[data-v-c061e893]{color:var(--status-succeeded-text);background:var(--status-succeeded-bg);border:1px solid var(--status-succeeded-border)}.status-chip.failed[data-v-c061e893]{color:var(--status-failed-text);background:var(--status-failed-bg);border:1px solid var(--status-failed-border)}.status-chip.running[data-v-c061e893],.status-chip.pending[data-v-c061e893]{color:var(--status-pending-text);background:var(--status-pending-bg);border:1px solid var(--status-pending-border)}.status-chip.muted[data-v-c061e893]{color:var(--muted);background:var(--card-bg);border-color:var(--input-border)}.pagination[data-v-c061e893]{display:flex;align-items:center;justify-content:center;gap:4px;margin-top:12px;flex-shrink:0}.page-btn[data-v-c061e893]{min-width:34px;min-height:34px;padding:0 8px;border:1px solid var(--input-border);border-radius:6px;background:var(--panel-bg);color:var(--muted);font-size:13px}.page-btn.active[data-v-c061e893]{border-color:var(--primary);background:var(--btn-ai-bg);color:var(--primary-strong);font-weight:600}.page-btn[data-v-c061e893]:disabled{opacity:.3;cursor:not-allowed}.page-ellipsis[data-v-c061e893]{width:34px;text-align:center;color:var(--muted-2);font-size:13px}.page-total[data-v-c061e893],.page-size-select[data-v-c061e893]{margin-left:12px}.page-total[data-v-c061e893]{font-size:12px;color:var(--muted-2)}.page-size-select[data-v-c061e893]{width:auto;height:30px;min-height:auto;padding:0 8px;font-size:12px;border:1px solid var(--input-border);border-radius:6px;background:var(--panel-bg);color:var(--muted)}.drawer-overlay[data-v-c061e893]{position:fixed;inset:0;z-index:110;display:flex;justify-content:flex-end;background:var(--drawer-overlay);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.preview-drawer[data-v-c061e893]{display:grid;grid-template-rows:auto minmax(0,1fr) auto;width:min(760px,100vw);height:100dvh;border-left:1px solid var(--panel-border);background:var(--drawer-bg);box-shadow:var(--shadow-modal)}.drawer-head[data-v-c061e893]{display:flex;justify-content:space-between;gap:16px;padding:20px 22px;border-bottom:1px solid var(--line)}.drawer-eyebrow[data-v-c061e893]{margin:0 0 8px;color:var(--primary-strong);font-size:12px}.drawer-head h2[data-v-c061e893]{margin:0 0 6px;font-size:18px}.drawer-subtitle[data-v-c061e893]{color:var(--muted);font-size:12px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.icon-button[data-v-c061e893]{width:38px;min-width:38px;height:38px;padding:0;border-color:var(--input-border);background:var(--input-bg)}.drawer-body[data-v-c061e893]{display:grid;gap:14px;align-content:start;min-height:0;overflow:auto;padding:16px 22px 22px}.preview-summary[data-v-c061e893]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.preview-summary div[data-v-c061e893],.preview-section[data-v-c061e893]{border:1px solid var(--card-border);border-radius:8px;background:var(--card-bg)}.preview-summary div[data-v-c061e893]{display:grid;gap:7px;padding:12px}.preview-summary span[data-v-c061e893]{color:var(--muted);font-size:12px}.preview-summary strong[data-v-c061e893]{min-width:0;overflow-wrap:anywhere;font-size:13px}.preview-section[data-v-c061e893]{padding:14px}.preview-section-head[data-v-c061e893]{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.preview-section-head h3[data-v-c061e893]{margin:0;font-size:14px}.preview-section-head span[data-v-c061e893]{color:var(--muted);font-size:12px}.drawer-loading[data-v-c061e893],.drawer-empty[data-v-c061e893]{display:grid;place-items:center;gap:8px;min-height:180px;color:var(--muted);font-size:13px}.drawer-loading.compact[data-v-c061e893],.drawer-empty.compact[data-v-c061e893]{min-height:82px}.retouch-prompt-text[data-v-c061e893]{color:var(--text);font-size:13px;line-height:1.7;white-space:pre-wrap;word-break:break-word;background:var(--card-bg);border:1px solid var(--card-border);border-radius:8px;padding:12px 14px;margin:0}.retouch-prompt-text.mono[data-v-c061e893]{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px}.source-image-grid[data-v-c061e893],.preview-asset-list[data-v-c061e893]{display:grid;grid-template-columns:repeat(auto-fill,minmax(126px,1fr));gap:10px}.source-image-card[data-v-c061e893]{display:grid;grid-template-rows:auto auto;gap:7px;padding:8px;border-color:var(--card-border);background:var(--card-bg)}.source-image-card img[data-v-c061e893]{width:100%;aspect-ratio:1 / 1;object-fit:cover;overflow:hidden;border-radius:6px;background:var(--grid-bg)}.source-image-card span[data-v-c061e893]{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:12px}.product-info-preview[data-v-c061e893]{display:grid;gap:12px}.info-row-grid[data-v-c061e893]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.info-row-grid div[data-v-c061e893]{display:grid;gap:6px;min-width:0;border:1px solid var(--card-border);border-radius:6px;padding:10px;background:var(--card-bg)}.info-row-grid span[data-v-c061e893],.info-subsection>span[data-v-c061e893]{color:var(--muted);font-size:12px}.info-row-grid strong[data-v-c061e893]{min-width:0;overflow-wrap:anywhere;color:var(--text);font-size:13px;font-weight:600}.info-subsection[data-v-c061e893]{display:grid;gap:8px;border-top:1px solid var(--line);padding-top:10px}.info-subsection ul[data-v-c061e893]{display:grid;gap:6px;margin:0;padding-left:18px;color:var(--text);font-size:13px;line-height:1.45}.spec-chip-row[data-v-c061e893]{display:flex;flex-wrap:wrap;gap:7px}.spec-chip-row span[data-v-c061e893]{border:1px solid var(--input-border);border-radius:999px;padding:4px 9px;color:var(--text);background:var(--btn-ai-bg);font-size:12px}.plan-list[data-v-c061e893]{display:grid;gap:8px}.plan-item[data-v-c061e893]{display:grid;grid-template-columns:32px minmax(0,1fr);align-items:center;gap:10px;border:1px solid var(--card-border);border-radius:7px;padding:9px;background:var(--card-bg)}.plan-index[data-v-c061e893]{display:grid;place-items:center;width:30px;height:30px;border:1px solid var(--line-strong);border-radius:6px;color:var(--primary-strong);background:var(--btn-ai-bg);font-size:12px;font-weight:700}.plan-item strong[data-v-c061e893]{display:block;margin-bottom:3px;font-size:13px}.plan-item div[data-v-c061e893]:nth-child(2){min-width:0}.plan-item div:nth-child(2) span[data-v-c061e893]{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:12px}.preview-asset-list[data-v-c061e893]{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px}.preview-asset-card[data-v-c061e893]{overflow:hidden;border:1px solid var(--card-border);border-radius:8px;background:var(--card-bg)}.preview-asset-image[data-v-c061e893]{display:grid;place-items:center;width:100%;min-height:176px;padding:0;border:0;border-radius:0;background:var(--grid-bg);background-size:16px 16px}.preview-asset-image[data-v-c061e893]:disabled{opacity:1}.preview-asset-image img[data-v-c061e893]{width:100%;height:100%;aspect-ratio:4 / 3;object-fit:cover}.preview-asset-meta[data-v-c061e893]{display:grid;gap:6px;padding:10px 12px 12px}.preview-asset-meta div[data-v-c061e893]{display:flex;align-items:center;justify-content:space-between;gap:8px}.preview-asset-meta strong[data-v-c061e893]{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.preview-asset-meta p[data-v-c061e893]{margin:0;color:var(--text);font-size:12px;line-height:1.45}.preview-asset-meta .dim[data-v-c061e893]{color:var(--muted)}.drawer-actions[data-v-c061e893]{display:flex;justify-content:flex-end;gap:10px;padding:14px 22px;border-top:1px solid var(--line);background:var(--panel-bg)}.drawer-actions button[data-v-c061e893]{min-height:38px}.error-text[data-v-c061e893]{margin:0;border-left:3px solid var(--danger);padding:9px 12px;color:var(--error-text);background:var(--error-bg);font-size:13px;line-height:1.5}@media(max-width:760px){.task-log-shell[data-v-c061e893]{padding:18px 12px}.task-log-header[data-v-c061e893]{align-items:stretch;flex-direction:column;gap:12px}.preview-drawer[data-v-c061e893]{width:100vw}.drawer-head[data-v-c061e893],.drawer-body[data-v-c061e893],.drawer-actions[data-v-c061e893]{padding-left:14px;padding-right:14px}.preview-summary[data-v-c061e893],.info-row-grid[data-v-c061e893]{grid-template-columns:1fr}.drawer-actions[data-v-c061e893]{align-items:stretch;flex-direction:column}}.retouch-shell[data-v-cb3d92fb]{max-width:1100px;margin:0 auto;padding:32px 24px 64px;min-height:calc(100dvh - 42px)}.retouch-header[data-v-cb3d92fb]{margin-bottom:32px}.retouch-brand[data-v-cb3d92fb]{display:flex;align-items:center;gap:10px;color:var(--primary-strong);margin-bottom:6px}.retouch-brand h1[data-v-cb3d92fb]{font-size:22px;color:var(--text)}.retouch-desc[data-v-cb3d92fb]{margin:0 0 0 32px;font-size:13px;color:var(--muted)}.retouch-layout[data-v-cb3d92fb]{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:48px}@media(max-width:768px){.retouch-layout[data-v-cb3d92fb]{grid-template-columns:1fr}}.retouch-panel[data-v-cb3d92fb]{display:flex;flex-direction:column;gap:16px}.upload-zone[data-v-cb3d92fb]{min-height:180px;border:2px dashed var(--input-border);border-radius:12px;background:var(--panel-bg);cursor:pointer;transition:border-color .2s,background .2s;display:flex;align-items:center;justify-content:center}.upload-zone[data-v-cb3d92fb]:hover,.upload-zone.drop-active[data-v-cb3d92fb]{border-color:var(--line-strong);background:var(--btn-ai-bg)}.upload-zone.has-images[data-v-cb3d92fb]{min-height:auto;padding:12px;border-style:solid;justify-content:flex-start}.upload-placeholder[data-v-cb3d92fb]{display:flex;flex-direction:column;align-items:center;gap:8px;color:var(--muted);padding:32px}.upload-placeholder strong[data-v-cb3d92fb]{font-size:14px;color:var(--text)}.upload-placeholder span[data-v-cb3d92fb]{font-size:12px}.upload-thumbs[data-v-cb3d92fb]{display:flex;flex-wrap:wrap;gap:10px;width:100%}.thumb-item[data-v-cb3d92fb]{position:relative;width:100px;height:100px;border-radius:8px;overflow:hidden;border:1px solid var(--card-border);background:var(--card-bg)}.thumb-item img[data-v-cb3d92fb]{width:100%;height:100%;object-fit:cover}.thumb-remove[data-v-cb3d92fb]{position:absolute;top:4px;right:4px;width:20px;height:20px;padding:0;border:none;border-radius:4px;background:#000000b3;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center}.thumb-name[data-v-cb3d92fb]{position:absolute;bottom:0;left:0;right:0;font-size:9px;padding:2px 4px;background:#0009;color:#ccc;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.thumb-add[data-v-cb3d92fb]{width:100px;height:100px;border:2px dashed var(--input-border);border-radius:8px;background:transparent;color:var(--muted);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:border-color .2s,color .2s}.thumb-add[data-v-cb3d92fb]:hover{border-color:var(--line-strong);color:var(--primary-strong)}.config-group[data-v-cb3d92fb]{display:flex;flex-direction:column;gap:6px}.config-label[data-v-cb3d92fb]{font-size:13px;font-weight:600;color:var(--text);display:flex;align-items:baseline;gap:8px}.label-hint[data-v-cb3d92fb]{font-weight:400;font-size:11px;color:var(--muted-2)}.template-dropdown[data-v-cb3d92fb]{position:relative}.template-trigger[data-v-cb3d92fb]{width:100%;min-height:40px;padding:0 14px;display:flex;align-items:center;justify-content:space-between;gap:8px;border:1px solid var(--input-border);border-radius:8px;background:var(--input-bg);color:var(--text);font-size:13px;cursor:pointer;transition:border-color .2s}.template-trigger[data-v-cb3d92fb]:hover{border-color:var(--line-strong)}.template-trigger .placeholder[data-v-cb3d92fb]{color:var(--muted-2)}.template-dropdown.open .template-trigger[data-v-cb3d92fb]{border-color:var(--line-strong);border-bottom-left-radius:0;border-bottom-right-radius:0}.template-menu[data-v-cb3d92fb]{position:absolute;top:100%;left:0;right:0;z-index:20;border:1px solid var(--panel-border);border-top:none;border-bottom-left-radius:8px;border-bottom-right-radius:8px;background:var(--dropdown-bg);max-height:220px;overflow-y:auto;box-shadow:var(--shadow-modal)}.template-option[data-v-cb3d92fb]{width:100%;min-height:44px;padding:0 14px;display:flex;align-items:center;justify-content:space-between;border:none;background:transparent;color:var(--text);font-size:13px;cursor:pointer;transition:background .15s}.template-option[data-v-cb3d92fb]:hover,.template-option.active[data-v-cb3d92fb]{background:var(--btn-ai-bg)}.tmpl-cat[data-v-cb3d92fb]{font-size:11px;color:var(--muted-2)}.prompt-input[data-v-cb3d92fb]{width:100%;min-height:100px;padding:12px;border:1px solid var(--input-border);border-radius:8px;background:var(--input-bg);color:var(--text);font-size:13px;resize:vertical;font-family:inherit;line-height:1.5}.prompt-input[data-v-cb3d92fb]:focus{outline:none;border-color:var(--line-strong)}.generate-btn[data-v-cb3d92fb]{width:100%;min-height:48px;display:flex;align-items:center;justify-content:center;gap:8px;font-size:15px;font-weight:600;border:1px solid var(--primary);border-radius:10px;background:var(--primary);color:#fff;cursor:pointer;transition:all .2s}.generate-btn[data-v-cb3d92fb]:hover:not(:disabled){border-color:var(--primary-strong)}.generate-btn[data-v-cb3d92fb]:disabled{opacity:.5;cursor:not-allowed}.result-panel[data-v-cb3d92fb]{min-height:400px;border:1px solid var(--panel-border);border-radius:12px;background:var(--panel-bg);padding:0}.result-empty[data-v-cb3d92fb]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;flex:1;padding:64px 24px;color:var(--muted-2)}.result-empty strong[data-v-cb3d92fb]{font-size:15px;color:var(--muted)}.result-empty span[data-v-cb3d92fb]{font-size:13px}.result-status[data-v-cb3d92fb]{display:flex;align-items:center;justify-content:center;padding:48px 24px}.status-card[data-v-cb3d92fb]{display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;color:var(--primary-strong)}.status-card strong[data-v-cb3d92fb]{font-size:15px;color:var(--text)}.status-card span[data-v-cb3d92fb]{font-size:13px;color:var(--muted)}.status-err-card[data-v-cb3d92fb]{color:var(--status-failed-text)}.retry-btn[data-v-cb3d92fb]{margin-top:8px;min-height:36px;padding:0 16px;font-size:13px;display:flex;align-items:center;gap:6px;border:1px solid var(--status-failed-border);border-radius:8px;background:var(--status-failed-bg);color:var(--status-failed-text);cursor:pointer}.retry-btn[data-v-cb3d92fb]:hover{border-color:var(--status-failed-border);background:var(--status-failed-bg)}.result-assets[data-v-cb3d92fb]{display:flex;flex-direction:column;padding:20px}.result-header[data-v-cb3d92fb]{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.result-header h3[data-v-cb3d92fb]{font-size:15px;color:var(--text)}.result-actions[data-v-cb3d92fb]{display:flex;gap:8px}.action-btn[data-v-cb3d92fb]{min-height:32px;padding:0 12px;font-size:12px;display:flex;align-items:center;gap:6px;border:1px solid var(--input-border);border-radius:6px;background:var(--input-bg);color:var(--muted);cursor:pointer}.action-btn[data-v-cb3d92fb]:hover{border-color:var(--line-strong);color:var(--text)}.asset-grid[data-v-cb3d92fb]{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px}.asset-card[data-v-cb3d92fb]{position:relative;border-radius:8px;overflow:hidden;border:1px solid var(--card-border);aspect-ratio:1;background:var(--card-bg)}.asset-card img[data-v-cb3d92fb]{width:100%;height:100%;object-fit:cover}.retry-btn.compact[data-v-cb3d92fb]{min-height:30px;margin-top:4px;padding:0 12px;font-size:12px}.asset-failed[data-v-cb3d92fb]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;width:100%;height:100%;color:var(--status-failed-text);background:var(--status-failed-bg);font-size:13px}.preview-btn[data-v-cb3d92fb]{position:absolute;bottom:8px;right:8px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;background:#000000b3;color:#fff;border:none;cursor:pointer;transition:background .2s}.preview-btn[data-v-cb3d92fb]:hover{background:#38bdf899}.preview-overlay[data-v-cb3d92fb]{position:fixed;inset:0;z-index:120;display:flex;align-items:center;justify-content:center;padding:24px;background:var(--modal-overlay);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.preview-modal[data-v-cb3d92fb]{position:relative;max-width:min(960px,100%);max-height:calc(100vh - 48px);overflow:auto;border:1px solid var(--panel-border);border-radius:8px;background:var(--modal-bg)}.preview-modal img[data-v-cb3d92fb]{display:block;max-width:100%;height:auto}.preview-close[data-v-cb3d92fb]{position:sticky;top:10px;float:right;z-index:2;width:34px;height:34px;margin:10px;padding:0;border-radius:6px;background:#000000b8;color:#fff}.recent-section[data-v-cb3d92fb]{border-top:1px solid var(--line);padding-top:28px}.recent-header[data-v-cb3d92fb]{display:flex;align-items:center;gap:10px;margin-bottom:14px}.recent-header h2[data-v-cb3d92fb]{font-size:15px;color:var(--text);display:flex;align-items:center;gap:6px}.task-list[data-v-cb3d92fb]{display:grid;gap:4px}.task-item[data-v-cb3d92fb]{display:grid;grid-template-columns:100px 1fr 80px 160px;align-items:center;gap:12px;min-height:40px;padding:0 14px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--text);font-size:13px;cursor:pointer;transition:all .15s;text-align:left}.task-item[data-v-cb3d92fb]:hover{border-color:var(--panel-border);background:var(--panel-bg)}.task-id[data-v-cb3d92fb]{font-family:monospace;font-size:12px;color:var(--muted)}.task-tmpl[data-v-cb3d92fb]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-status[data-v-cb3d92fb]{font-size:11px;padding:2px 8px;border-radius:999px;border:1px solid var(--input-border);color:var(--muted);text-align:center}.task-status.status-ok[data-v-cb3d92fb]{border-color:var(--status-succeeded-border);color:var(--status-succeeded-text);background:var(--status-succeeded-bg)}.task-status.status-err[data-v-cb3d92fb]{border-color:var(--status-failed-border);color:var(--status-failed-text);background:var(--status-failed-bg)}.task-status.status-pending[data-v-cb3d92fb]{border-color:var(--status-running-border);color:var(--status-running-text);background:var(--status-running-bg)}.task-time[data-v-cb3d92fb]{font-size:11px;color:var(--muted-2);text-align:right}.no-tasks[data-v-cb3d92fb]{text-align:center;padding:24px;color:var(--muted-2);font-size:13px}.spin[data-v-cb3d92fb]{animation:spin-cb3d92fb .8s linear infinite}@keyframes spin-cb3d92fb{to{transform:rotate(360deg)}}.retouch-shell[data-v-0a2cad69]{max-width:1100px;margin:0 auto;padding:32px 24px 64px;min-height:calc(100dvh - 42px)}.retouch-header[data-v-0a2cad69]{margin-bottom:32px}.retouch-brand[data-v-0a2cad69]{display:flex;align-items:center;gap:10px;color:var(--primary-strong);margin-bottom:6px}.retouch-brand h1[data-v-0a2cad69]{font-size:22px;color:var(--text)}.retouch-desc[data-v-0a2cad69]{margin:0 0 0 32px;font-size:13px;color:var(--muted)}.retouch-layout[data-v-0a2cad69]{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:48px}@media(max-width:768px){.retouch-layout[data-v-0a2cad69]{grid-template-columns:1fr}}.retouch-panel[data-v-0a2cad69]{display:flex;flex-direction:column;gap:16px}.upload-zone[data-v-0a2cad69]{min-height:180px;border:2px dashed var(--input-border);border-radius:12px;background:var(--panel-bg);cursor:pointer;transition:border-color .2s,background .2s;display:flex;align-items:center;justify-content:center}.upload-zone[data-v-0a2cad69]:hover,.upload-zone.drop-active[data-v-0a2cad69]{border-color:var(--line-strong);background:var(--btn-ai-bg)}.upload-zone.has-images[data-v-0a2cad69]{min-height:auto;padding:12px;border-style:solid;justify-content:flex-start}.upload-placeholder[data-v-0a2cad69]{display:flex;flex-direction:column;align-items:center;gap:8px;color:var(--muted);padding:32px}.upload-placeholder strong[data-v-0a2cad69]{font-size:14px;color:var(--text)}.upload-placeholder span[data-v-0a2cad69]{font-size:12px}.upload-thumbs[data-v-0a2cad69]{display:flex;flex-wrap:wrap;gap:10px;width:100%}.thumb-item[data-v-0a2cad69]{position:relative;width:100px;height:100px;border-radius:8px;overflow:hidden;border:1px solid var(--card-border);background:var(--card-bg)}.thumb-item img[data-v-0a2cad69]{width:100%;height:100%;object-fit:cover}.thumb-remove[data-v-0a2cad69]{position:absolute;top:4px;right:4px;width:20px;height:20px;padding:0;border:none;border-radius:4px;background:#000000b3;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center}.thumb-name[data-v-0a2cad69]{position:absolute;bottom:0;left:0;right:0;font-size:9px;padding:2px 4px;background:#0009;color:#ccc;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.thumb-add[data-v-0a2cad69]{width:100px;height:100px;border:2px dashed var(--input-border);border-radius:8px;background:transparent;color:var(--muted);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:border-color .2s,color .2s}.thumb-add[data-v-0a2cad69]:hover{border-color:var(--line-strong);color:var(--primary-strong)}.config-group[data-v-0a2cad69]{display:flex;flex-direction:column;gap:6px}.config-label[data-v-0a2cad69]{font-size:13px;font-weight:600;color:var(--text);display:flex;align-items:baseline;gap:8px}.label-hint[data-v-0a2cad69]{font-weight:400;font-size:11px;color:var(--muted-2)}.prompt-input[data-v-0a2cad69]{width:100%;min-height:100px;padding:12px;border:1px solid var(--input-border);border-radius:8px;background:var(--input-bg);color:var(--text);font-size:13px;resize:vertical;font-family:inherit;line-height:1.5}.prompt-input[data-v-0a2cad69]:focus{outline:none;border-color:var(--line-strong)}.generate-btn[data-v-0a2cad69]{width:100%;min-height:48px;display:flex;align-items:center;justify-content:center;gap:8px;font-size:15px;font-weight:600;border:1px solid var(--primary);border-radius:10px;background:var(--primary);color:#fff;cursor:pointer;transition:all .2s}.generate-btn[data-v-0a2cad69]:hover:not(:disabled){border-color:var(--primary-strong)}.generate-btn[data-v-0a2cad69]:disabled{opacity:.5;cursor:not-allowed}.result-panel[data-v-0a2cad69]{min-height:400px;border:1px solid var(--panel-border);border-radius:12px;background:var(--panel-bg);padding:0}.result-empty[data-v-0a2cad69]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;flex:1;padding:64px 24px;color:var(--muted-2)}.result-empty strong[data-v-0a2cad69]{font-size:15px;color:var(--muted)}.result-empty span[data-v-0a2cad69]{font-size:13px}.result-status[data-v-0a2cad69]{display:flex;align-items:center;justify-content:center;padding:48px 24px}.status-card[data-v-0a2cad69]{display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;color:var(--primary-strong)}.status-card strong[data-v-0a2cad69]{font-size:15px;color:var(--text)}.status-card span[data-v-0a2cad69]{font-size:13px;color:var(--muted)}.status-err-card[data-v-0a2cad69]{color:var(--status-failed-text)}.retry-btn[data-v-0a2cad69]{margin-top:8px;min-height:36px;padding:0 16px;font-size:13px;display:flex;align-items:center;gap:6px;border:1px solid var(--status-failed-border);border-radius:8px;background:var(--status-failed-bg);color:var(--status-failed-text);cursor:pointer}.retry-btn[data-v-0a2cad69]:hover{border-color:var(--status-failed-border);background:var(--status-failed-bg)}.result-assets[data-v-0a2cad69]{display:flex;flex-direction:column;padding:20px}.result-header[data-v-0a2cad69]{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.result-header h3[data-v-0a2cad69]{font-size:15px;color:var(--text)}.result-actions[data-v-0a2cad69]{display:flex;gap:8px}.action-btn[data-v-0a2cad69]{min-height:32px;padding:0 12px;font-size:12px;display:flex;align-items:center;gap:6px;border:1px solid var(--input-border);border-radius:6px;background:var(--input-bg);color:var(--muted);cursor:pointer}.action-btn[data-v-0a2cad69]:hover{border-color:var(--line-strong);color:var(--text)}.asset-grid[data-v-0a2cad69]{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px}.asset-card[data-v-0a2cad69]{position:relative;border-radius:8px;overflow:hidden;border:1px solid var(--card-border);aspect-ratio:1;background:var(--card-bg)}.asset-card img[data-v-0a2cad69]{width:100%;height:100%;object-fit:cover}.retry-btn.compact[data-v-0a2cad69]{min-height:30px;margin-top:4px;padding:0 12px;font-size:12px}.asset-failed[data-v-0a2cad69]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;width:100%;height:100%;color:var(--status-failed-text);background:var(--status-failed-bg);font-size:13px}.preview-btn[data-v-0a2cad69]{position:absolute;bottom:8px;right:8px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;background:#000000b3;color:#fff;border:none;cursor:pointer;transition:background .2s}.preview-btn[data-v-0a2cad69]:hover{background:#38bdf899}.preview-overlay[data-v-0a2cad69]{position:fixed;inset:0;z-index:120;display:flex;align-items:center;justify-content:center;padding:24px;background:var(--modal-overlay);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.preview-modal[data-v-0a2cad69]{position:relative;max-width:min(960px,100%);max-height:calc(100vh - 48px);overflow:auto;border:1px solid var(--panel-border);border-radius:8px;background:var(--modal-bg)}.preview-modal img[data-v-0a2cad69]{display:block;max-width:100%;height:auto}.preview-close[data-v-0a2cad69]{position:sticky;top:10px;float:right;z-index:2;width:34px;height:34px;margin:10px;padding:0;border-radius:6px;background:#000000b8;color:#fff}.recent-section[data-v-0a2cad69]{border-top:1px solid var(--line);padding-top:28px}.recent-header[data-v-0a2cad69]{display:flex;align-items:center;gap:10px;margin-bottom:14px}.recent-header h2[data-v-0a2cad69]{font-size:15px;color:var(--text);display:flex;align-items:center;gap:6px}.task-list[data-v-0a2cad69]{display:grid;gap:4px}.task-item[data-v-0a2cad69]{display:grid;grid-template-columns:100px 1fr 80px 160px;align-items:center;gap:12px;min-height:40px;padding:0 14px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--text);font-size:13px;cursor:pointer;transition:all .15s;text-align:left}.task-item[data-v-0a2cad69]:hover{border-color:var(--panel-border);background:var(--panel-bg)}.task-id[data-v-0a2cad69]{font-family:monospace;font-size:12px;color:var(--muted)}.task-tmpl[data-v-0a2cad69]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-status[data-v-0a2cad69]{font-size:11px;padding:2px 8px;border-radius:999px;border:1px solid var(--input-border);color:var(--muted);text-align:center}.task-status.status-ok[data-v-0a2cad69]{border-color:var(--status-succeeded-border);color:var(--status-succeeded-text);background:var(--status-succeeded-bg)}.task-status.status-err[data-v-0a2cad69]{border-color:var(--status-failed-border);color:var(--status-failed-text);background:var(--status-failed-bg)}.task-status.status-pending[data-v-0a2cad69]{border-color:var(--status-running-border);color:var(--status-running-text);background:var(--status-running-bg)}.task-time[data-v-0a2cad69]{font-size:11px;color:var(--muted-2);text-align:right}.no-tasks[data-v-0a2cad69]{text-align:center;padding:24px;color:var(--muted-2);font-size:13px}.spin[data-v-0a2cad69]{animation:spin-0a2cad69 .8s linear infinite}@keyframes spin-0a2cad69{to{transform:rotate(360deg)}}.retouch-shell[data-v-89ec805b]{max-width:1100px;margin:0 auto;padding:32px 24px 64px;min-height:calc(100dvh - 42px)}.retouch-header[data-v-89ec805b]{margin-bottom:32px}.retouch-brand[data-v-89ec805b]{display:flex;align-items:center;gap:10px;color:var(--primary-strong);margin-bottom:6px}.retouch-brand h1[data-v-89ec805b]{font-size:22px;color:var(--text)}.retouch-desc[data-v-89ec805b]{margin:0 0 0 32px;font-size:13px;color:var(--muted)}.retouch-layout[data-v-89ec805b]{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:48px}@media(max-width:768px){.retouch-layout[data-v-89ec805b]{grid-template-columns:1fr}}.retouch-panel[data-v-89ec805b]{display:flex;flex-direction:column;gap:16px}.upload-zone[data-v-89ec805b]{min-height:180px;border:2px dashed var(--input-border);border-radius:12px;background:var(--panel-bg);cursor:pointer;transition:border-color .2s,background .2s;display:flex;align-items:center;justify-content:center}.upload-zone[data-v-89ec805b]:hover,.upload-zone.drop-active[data-v-89ec805b]{border-color:var(--line-strong);background:var(--btn-ai-bg)}.upload-zone.has-images[data-v-89ec805b]{min-height:auto;padding:12px;border-style:solid;justify-content:flex-start}.upload-placeholder[data-v-89ec805b]{display:flex;flex-direction:column;align-items:center;gap:8px;color:var(--muted);padding:32px}.upload-placeholder strong[data-v-89ec805b]{font-size:14px;color:var(--text)}.upload-placeholder span[data-v-89ec805b]{font-size:12px}.upload-thumbs[data-v-89ec805b]{display:flex;flex-wrap:wrap;gap:10px;width:100%}.thumb-item[data-v-89ec805b]{position:relative;width:100px;height:100px;border-radius:8px;overflow:hidden;border:1px solid var(--card-border);background:var(--card-bg)}.thumb-item img[data-v-89ec805b]{width:100%;height:100%;object-fit:cover}.thumb-remove[data-v-89ec805b]{position:absolute;top:4px;right:4px;width:20px;height:20px;padding:0;border:none;border-radius:4px;background:#000000b3;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center}.thumb-name[data-v-89ec805b]{position:absolute;bottom:0;left:0;right:0;font-size:9px;padding:2px 4px;background:#0009;color:#ccc;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.thumb-add[data-v-89ec805b]{width:100px;height:100px;border:2px dashed var(--input-border);border-radius:8px;background:transparent;color:var(--muted);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:border-color .2s,color .2s}.thumb-add[data-v-89ec805b]:hover{border-color:var(--line-strong);color:var(--primary-strong)}.config-group[data-v-89ec805b]{display:flex;flex-direction:column;gap:6px}.config-label[data-v-89ec805b]{font-size:13px;font-weight:600;color:var(--text);display:flex;align-items:baseline;gap:8px}.label-hint[data-v-89ec805b]{font-weight:400;font-size:11px;color:var(--muted-2)}.prompt-input[data-v-89ec805b]{width:100%;min-height:100px;padding:12px;border:1px solid var(--input-border);border-radius:8px;background:var(--input-bg);color:var(--text);font-size:13px;resize:vertical;font-family:inherit;line-height:1.5}.prompt-input[data-v-89ec805b]:focus{outline:none;border-color:var(--line-strong)}.generate-btn[data-v-89ec805b]{width:100%;min-height:48px;display:flex;align-items:center;justify-content:center;gap:8px;font-size:15px;font-weight:600;border:1px solid var(--primary);border-radius:10px;background:var(--primary);color:#fff;cursor:pointer;transition:all .2s}.generate-btn[data-v-89ec805b]:hover:not(:disabled){border-color:var(--primary-strong)}.generate-btn[data-v-89ec805b]:disabled{opacity:.5;cursor:not-allowed}.result-panel[data-v-89ec805b]{min-height:400px;border:1px solid var(--panel-border);border-radius:12px;background:var(--panel-bg);padding:0}.result-empty[data-v-89ec805b]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;flex:1;padding:64px 24px;color:var(--muted-2)}.result-empty strong[data-v-89ec805b]{font-size:15px;color:var(--muted)}.result-empty span[data-v-89ec805b]{font-size:13px}.result-status[data-v-89ec805b]{display:flex;align-items:center;justify-content:center;padding:48px 24px}.status-card[data-v-89ec805b]{display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;color:var(--primary-strong)}.status-card strong[data-v-89ec805b]{font-size:15px;color:var(--text)}.status-card span[data-v-89ec805b]{font-size:13px;color:var(--muted)}.status-err-card[data-v-89ec805b]{color:var(--status-failed-text)}.retry-btn[data-v-89ec805b]{margin-top:8px;min-height:36px;padding:0 16px;font-size:13px;display:flex;align-items:center;gap:6px;border:1px solid var(--status-failed-border);border-radius:8px;background:var(--status-failed-bg);color:var(--status-failed-text);cursor:pointer}.retry-btn[data-v-89ec805b]:hover{border-color:var(--status-failed-border);background:var(--status-failed-bg)}.result-assets[data-v-89ec805b]{display:flex;flex-direction:column;padding:20px}.result-header[data-v-89ec805b]{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.result-header h3[data-v-89ec805b]{font-size:15px;color:var(--text)}.result-actions[data-v-89ec805b]{display:flex;gap:8px}.action-btn[data-v-89ec805b]{min-height:32px;padding:0 12px;font-size:12px;display:flex;align-items:center;gap:6px;border:1px solid var(--input-border);border-radius:6px;background:var(--input-bg);color:var(--muted);cursor:pointer}.action-btn[data-v-89ec805b]:hover{border-color:var(--line-strong);color:var(--text)}.asset-grid[data-v-89ec805b]{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px}.asset-card[data-v-89ec805b]{position:relative;border-radius:8px;overflow:hidden;border:1px solid var(--card-border);aspect-ratio:1;background:var(--card-bg)}.asset-card img[data-v-89ec805b]{width:100%;height:100%;object-fit:cover}.retry-btn.compact[data-v-89ec805b]{min-height:30px;margin-top:4px;padding:0 12px;font-size:12px}.asset-failed[data-v-89ec805b]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;width:100%;height:100%;color:var(--status-failed-text);background:var(--status-failed-bg);font-size:13px}.preview-btn[data-v-89ec805b]{position:absolute;bottom:8px;right:8px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;background:#000000b3;color:#fff;border:none;cursor:pointer;transition:background .2s}.preview-btn[data-v-89ec805b]:hover{background:#38bdf899}.preview-overlay[data-v-89ec805b]{position:fixed;inset:0;z-index:120;display:flex;align-items:center;justify-content:center;padding:24px;background:var(--modal-overlay);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.preview-modal[data-v-89ec805b]{position:relative;max-width:min(960px,100%);max-height:calc(100vh - 48px);overflow:auto;border:1px solid var(--panel-border);border-radius:8px;background:var(--modal-bg)}.preview-modal img[data-v-89ec805b]{display:block;max-width:100%;height:auto}.preview-close[data-v-89ec805b]{position:sticky;top:10px;float:right;z-index:2;width:34px;height:34px;margin:10px;padding:0;border-radius:6px;background:#000000b8;color:#fff}.recent-section[data-v-89ec805b]{border-top:1px solid var(--line);padding-top:28px}.recent-header[data-v-89ec805b]{display:flex;align-items:center;gap:10px;margin-bottom:14px}.recent-header h2[data-v-89ec805b]{font-size:15px;color:var(--text);display:flex;align-items:center;gap:6px}.task-list[data-v-89ec805b]{display:grid;gap:4px}.task-item[data-v-89ec805b]{display:grid;grid-template-columns:100px 1fr 80px 160px;align-items:center;gap:12px;min-height:40px;padding:0 14px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--text);font-size:13px;cursor:pointer;transition:all .15s;text-align:left}.task-item[data-v-89ec805b]:hover{border-color:var(--panel-border);background:var(--panel-bg)}.task-id[data-v-89ec805b]{font-family:monospace;font-size:12px;color:var(--muted)}.task-tmpl[data-v-89ec805b]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-status[data-v-89ec805b]{font-size:11px;padding:2px 8px;border-radius:999px;border:1px solid var(--input-border);color:var(--muted);text-align:center}.task-status.status-ok[data-v-89ec805b]{border-color:var(--status-succeeded-border);color:var(--status-succeeded-text);background:var(--status-succeeded-bg)}.task-status.status-err[data-v-89ec805b]{border-color:var(--status-failed-border);color:var(--status-failed-text);background:var(--status-failed-bg)}.task-status.status-pending[data-v-89ec805b]{border-color:var(--status-running-border);color:var(--status-running-text);background:var(--status-running-bg)}.task-time[data-v-89ec805b]{font-size:11px;color:var(--muted-2);text-align:right}.no-tasks[data-v-89ec805b]{text-align:center;padding:24px;color:var(--muted-2);font-size:13px}.spin[data-v-89ec805b]{animation:spin-89ec805b .8s linear infinite}@keyframes spin-89ec805b{to{transform:rotate(360deg)}}.retouch-shell[data-v-0d99a021]{max-width:1100px;margin:0 auto;padding:32px 24px 64px;min-height:calc(100dvh - 42px)}.retouch-header[data-v-0d99a021]{margin-bottom:32px}.retouch-brand[data-v-0d99a021]{display:flex;align-items:center;gap:10px;color:var(--primary-strong);margin-bottom:6px}.retouch-brand h1[data-v-0d99a021]{font-size:22px;color:var(--text)}.retouch-desc[data-v-0d99a021]{margin:0 0 0 32px;font-size:13px;color:var(--muted)}.retouch-layout[data-v-0d99a021]{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:48px}@media(max-width:768px){.retouch-layout[data-v-0d99a021]{grid-template-columns:1fr}}.retouch-panel[data-v-0d99a021]{display:flex;flex-direction:column;gap:16px}.upload-zone[data-v-0d99a021]{min-height:180px;border:2px dashed var(--input-border);border-radius:12px;background:var(--panel-bg);cursor:pointer;transition:border-color .2s,background .2s;display:flex;align-items:center;justify-content:center}.upload-zone[data-v-0d99a021]:hover,.upload-zone.drop-active[data-v-0d99a021]{border-color:var(--line-strong);background:var(--btn-ai-bg)}.upload-zone.has-images[data-v-0d99a021]{min-height:auto;padding:12px;border-style:solid;justify-content:flex-start}.upload-placeholder[data-v-0d99a021]{display:flex;flex-direction:column;align-items:center;gap:8px;color:var(--muted);padding:32px}.upload-placeholder strong[data-v-0d99a021]{font-size:14px;color:var(--text)}.upload-placeholder span[data-v-0d99a021]{font-size:12px}.upload-thumbs[data-v-0d99a021]{display:flex;flex-wrap:wrap;gap:10px;width:100%}.thumb-item[data-v-0d99a021]{position:relative;width:100px;height:100px;border-radius:8px;overflow:hidden;border:1px solid var(--card-border);background:var(--card-bg)}.thumb-item img[data-v-0d99a021]{width:100%;height:100%;object-fit:cover}.thumb-remove[data-v-0d99a021]{position:absolute;top:4px;right:4px;width:20px;height:20px;padding:0;border:none;border-radius:4px;background:#000000b3;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center}.thumb-name[data-v-0d99a021]{position:absolute;bottom:0;left:0;right:0;font-size:9px;padding:2px 4px;background:#0009;color:#ccc;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.thumb-add[data-v-0d99a021]{width:100px;height:100px;border:2px dashed var(--input-border);border-radius:8px;background:transparent;color:var(--muted);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:border-color .2s,color .2s}.thumb-add[data-v-0d99a021]:hover{border-color:var(--line-strong);color:var(--primary-strong)}.config-group[data-v-0d99a021]{display:flex;flex-direction:column;gap:6px}.config-label[data-v-0d99a021]{font-size:13px;font-weight:600;color:var(--text);display:flex;align-items:baseline;gap:8px}.label-hint[data-v-0d99a021]{font-weight:400;font-size:11px;color:var(--muted-2)}.prompt-input[data-v-0d99a021]{width:100%;min-height:100px;padding:12px;border:1px solid var(--input-border);border-radius:8px;background:var(--input-bg);color:var(--text);font-size:13px;resize:vertical;font-family:inherit;line-height:1.5}.prompt-input[data-v-0d99a021]:focus{outline:none;border-color:var(--line-strong)}.generate-btn[data-v-0d99a021]{width:100%;min-height:48px;display:flex;align-items:center;justify-content:center;gap:8px;font-size:15px;font-weight:600;border:1px solid var(--primary);border-radius:10px;background:var(--primary);color:#fff;cursor:pointer;transition:all .2s}.generate-btn[data-v-0d99a021]:hover:not(:disabled){border-color:var(--primary-strong)}.generate-btn[data-v-0d99a021]:disabled{opacity:.5;cursor:not-allowed}.result-panel[data-v-0d99a021]{min-height:400px;border:1px solid var(--panel-border);border-radius:12px;background:var(--panel-bg);padding:0}.result-empty[data-v-0d99a021]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;flex:1;padding:64px 24px;color:var(--muted-2)}.result-empty strong[data-v-0d99a021]{font-size:15px;color:var(--muted)}.result-empty span[data-v-0d99a021]{font-size:13px}.result-status[data-v-0d99a021]{display:flex;align-items:center;justify-content:center;padding:48px 24px}.status-card[data-v-0d99a021]{display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;color:var(--primary-strong)}.status-card strong[data-v-0d99a021]{font-size:15px;color:var(--text)}.status-card span[data-v-0d99a021]{font-size:13px;color:var(--muted)}.status-err-card[data-v-0d99a021]{color:var(--status-failed-text)}.retry-btn[data-v-0d99a021]{margin-top:8px;min-height:36px;padding:0 16px;font-size:13px;display:flex;align-items:center;gap:6px;border:1px solid var(--status-failed-border);border-radius:8px;background:var(--status-failed-bg);color:var(--status-failed-text);cursor:pointer}.retry-btn[data-v-0d99a021]:hover{border-color:var(--status-failed-border);background:var(--status-failed-bg)}.result-assets[data-v-0d99a021]{display:flex;flex-direction:column;padding:20px}.result-header[data-v-0d99a021]{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.result-header h3[data-v-0d99a021]{font-size:15px;color:var(--text)}.result-actions[data-v-0d99a021]{display:flex;gap:8px}.action-btn[data-v-0d99a021]{min-height:32px;padding:0 12px;font-size:12px;display:flex;align-items:center;gap:6px;border:1px solid var(--input-border);border-radius:6px;background:var(--input-bg);color:var(--muted);cursor:pointer}.action-btn[data-v-0d99a021]:hover{border-color:var(--line-strong);color:var(--text)}.asset-grid[data-v-0d99a021]{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px}.asset-card[data-v-0d99a021]{position:relative;border-radius:8px;overflow:hidden;border:1px solid var(--card-border);aspect-ratio:1;background:var(--card-bg)}.asset-card img[data-v-0d99a021]{width:100%;height:100%;object-fit:cover}.retry-btn.compact[data-v-0d99a021]{min-height:30px;margin-top:4px;padding:0 12px;font-size:12px}.asset-failed[data-v-0d99a021]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;width:100%;height:100%;color:var(--status-failed-text);background:var(--status-failed-bg);font-size:13px}.preview-btn[data-v-0d99a021]{position:absolute;bottom:8px;right:8px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;background:#000000b3;color:#fff;border:none;cursor:pointer;transition:background .2s}.preview-btn[data-v-0d99a021]:hover{background:#38bdf899}.preview-overlay[data-v-0d99a021]{position:fixed;inset:0;z-index:120;display:flex;align-items:center;justify-content:center;padding:24px;background:var(--modal-overlay);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.preview-modal[data-v-0d99a021]{position:relative;max-width:min(960px,100%);max-height:calc(100vh - 48px);overflow:auto;border:1px solid var(--panel-border);border-radius:8px;background:var(--modal-bg)}.preview-modal img[data-v-0d99a021]{display:block;max-width:100%;height:auto}.preview-close[data-v-0d99a021]{position:sticky;top:10px;float:right;z-index:2;width:34px;height:34px;margin:10px;padding:0;border-radius:6px;background:#000000b8;color:#fff}.recent-section[data-v-0d99a021]{border-top:1px solid var(--line);padding-top:28px}.recent-header[data-v-0d99a021]{display:flex;align-items:center;gap:10px;margin-bottom:14px}.recent-header h2[data-v-0d99a021]{font-size:15px;color:var(--text);display:flex;align-items:center;gap:6px}.task-list[data-v-0d99a021]{display:grid;gap:4px}.task-item[data-v-0d99a021]{display:grid;grid-template-columns:100px 1fr 80px 160px;align-items:center;gap:12px;min-height:40px;padding:0 14px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--text);font-size:13px;cursor:pointer;transition:all .15s;text-align:left}.task-item[data-v-0d99a021]:hover{border-color:var(--panel-border);background:var(--panel-bg)}.task-id[data-v-0d99a021]{font-family:monospace;font-size:12px;color:var(--muted)}.task-tmpl[data-v-0d99a021]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-status[data-v-0d99a021]{font-size:11px;padding:2px 8px;border-radius:999px;border:1px solid var(--input-border);color:var(--muted);text-align:center}.task-status.status-ok[data-v-0d99a021]{border-color:var(--status-succeeded-border);color:var(--status-succeeded-text);background:var(--status-succeeded-bg)}.task-status.status-err[data-v-0d99a021]{border-color:var(--status-failed-border);color:var(--status-failed-text);background:var(--status-failed-bg)}.task-status.status-pending[data-v-0d99a021]{border-color:var(--status-running-border);color:var(--status-running-text);background:var(--status-running-bg)}.task-time[data-v-0d99a021]{font-size:11px;color:var(--muted-2);text-align:right}.no-tasks[data-v-0d99a021]{text-align:center;padding:24px;color:var(--muted-2);font-size:13px}.spin[data-v-0d99a021]{animation:spin-0d99a021 .8s linear infinite}@keyframes spin-0d99a021{to{transform:rotate(360deg)}}.studio-shell[data-v-70050220]{max-width:1180px;margin:0 auto;padding:32px 24px 64px;min-height:calc(100dvh - 42px)}.studio-header[data-v-70050220]{margin-bottom:26px}.studio-brand[data-v-70050220]{display:flex;align-items:center;gap:10px;color:var(--primary-strong);margin-bottom:6px}.studio-brand h1[data-v-70050220]{font-size:22px;color:var(--text)}.studio-header p[data-v-70050220]{margin:0 0 0 32px;font-size:13px;color:var(--muted)}.studio-layout[data-v-70050220]{display:grid;grid-template-columns:minmax(0,1fr) 420px;gap:20px;margin-bottom:42px}.studio-panel[data-v-70050220]{display:flex;flex-direction:column;gap:16px}.template-picker[data-v-70050220]{display:flex;align-items:center;gap:12px;padding:16px;border:1px solid var(--panel-border);border-radius:10px;background:var(--panel-bg)}.template-picker h2[data-v-70050220],.drawer-head h2[data-v-70050220]{margin:2px 0 4px;font-size:16px;color:var(--text)}.template-picker p[data-v-70050220]{margin:0;color:var(--muted);font-size:12px;line-height:1.5}.eyebrow[data-v-70050220]{color:var(--primary-strong);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.template-btn[data-v-70050220]{min-height:38px;display:inline-flex;align-items:center;gap:7px;padding:0 14px;border:1px solid var(--primary);border-radius:8px;background:var(--primary);color:#fff;font-weight:700;cursor:pointer;white-space:nowrap}.template-btn.secondary[data-v-70050220]{border-color:var(--input-border);background:var(--input-bg);color:var(--text)}.selected-template[data-v-70050220]{display:grid;grid-template-columns:86px minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px;border:1px solid var(--line-strong);border-radius:10px;background:var(--btn-ai-bg)}.selected-template img[data-v-70050220]{width:86px;aspect-ratio:3 / 4;object-fit:cover;border-radius:8px;border:1px solid var(--card-border)}.selected-template strong[data-v-70050220]{display:block;color:var(--text);font-size:14px}.selected-template span[data-v-70050220]{display:block;margin-top:4px;color:var(--muted);font-size:12px;line-height:1.45}.selected-template.reference-mode[data-v-70050220]{grid-template-columns:86px minmax(0,1fr) auto}.clear-pill[data-v-70050220]{min-height:30px;padding:0 10px;border:1px solid var(--input-border);border-radius:999px;background:var(--input-bg);color:var(--muted);font-size:12px;cursor:pointer}.upload-grid[data-v-70050220]{display:grid;grid-template-columns:1fr;gap:12px}.upload-box[data-v-70050220]{position:relative;min-height:190px;display:grid;place-items:center;gap:8px;padding:12px;border:1px dashed var(--input-border);border-radius:8px;background:var(--panel-bg);color:var(--muted);cursor:pointer;overflow:hidden}.upload-box[data-v-70050220]:hover{border-color:var(--line-strong)}.upload-box img[data-v-70050220]{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.upload-box strong[data-v-70050220]{position:absolute;left:10px;bottom:10px;padding:4px 8px;border-radius:5px;background:#000000ad;color:#fff;font-size:12px}.upload-empty[data-v-70050220]{display:flex;flex-direction:column;align-items:center;gap:8px;font-size:13px}.config-group[data-v-70050220]{display:flex;flex-direction:column;gap:7px}.config-label[data-v-70050220]{font-size:13px;font-weight:700;color:var(--text)}textarea[data-v-70050220]{width:100%;min-height:96px;padding:12px;border:1px solid var(--input-border);border-radius:8px;background:var(--input-bg);color:var(--text);font:inherit;resize:vertical;line-height:1.5}.generate-btn[data-v-70050220]{width:100%;min-height:48px;display:flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--primary);border-radius:8px;background:var(--primary);color:#fff;font-size:15px;font-weight:700;cursor:pointer}.generate-btn[data-v-70050220]:disabled{opacity:.5;cursor:not-allowed}.result-panel[data-v-70050220]{min-height:460px;border:1px solid var(--panel-border);border-radius:8px;background:var(--panel-bg);padding:18px}.result-state[data-v-70050220]{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:410px;text-align:center;color:var(--primary-strong)}.result-state strong[data-v-70050220]{color:var(--text);font-size:15px}.result-state span[data-v-70050220]{color:var(--muted);font-size:13px}.result-state.failed[data-v-70050220]{color:var(--status-failed-text)}.result-state.empty[data-v-70050220]{color:var(--muted-2)}.output-wrap[data-v-70050220]{display:flex;flex-direction:column;gap:14px}.result-head[data-v-70050220]{display:flex;align-items:center;justify-content:space-between}.result-head h3[data-v-70050220]{font-size:15px;color:var(--text)}.output-card[data-v-70050220]{position:relative;border-radius:8px;overflow:hidden;border:1px solid var(--card-border);background:var(--card-bg)}.output-card img[data-v-70050220]{display:block;width:100%;height:auto}.preview-btn[data-v-70050220]{position:absolute;right:10px;bottom:10px;width:32px;min-height:32px;padding:0;display:grid;place-items:center;border:0;border-radius:6px;background:#000000b3;color:#fff}.minor-btn[data-v-70050220]{min-height:32px;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:0 12px;border:1px solid var(--input-border);border-radius:6px;background:var(--input-bg);color:var(--muted);font-size:12px;cursor:pointer}.recent-section[data-v-70050220]{border-top:1px solid var(--line);padding-top:26px}.recent-header[data-v-70050220]{display:flex;align-items:center;gap:8px;margin-bottom:12px}.recent-header h2[data-v-70050220]{font-size:15px;color:var(--text);display:flex;align-items:center;gap:6px}.task-list[data-v-70050220]{display:grid;gap:4px}.task-item[data-v-70050220]{min-height:40px;display:grid;grid-template-columns:100px 1fr 80px 160px;align-items:center;gap:12px;padding:0 14px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--text);text-align:left;cursor:pointer}.task-item[data-v-70050220]:hover{border-color:var(--panel-border);background:var(--panel-bg)}.task-id[data-v-70050220]{font-family:monospace;color:var(--muted);font-size:12px}.task-name[data-v-70050220]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.task-status[data-v-70050220]{font-size:11px;padding:2px 8px;border-radius:999px;border:1px solid var(--input-border);text-align:center;color:var(--muted)}.status-ok[data-v-70050220]{border-color:var(--status-succeeded-border);color:var(--status-succeeded-text);background:var(--status-succeeded-bg)}.status-err[data-v-70050220]{border-color:var(--status-failed-border);color:var(--status-failed-text);background:var(--status-failed-bg)}.status-pending[data-v-70050220]{border-color:var(--status-running-border);color:var(--status-running-text);background:var(--status-running-bg)}.task-time[data-v-70050220]{text-align:right;color:var(--muted-2);font-size:11px}.no-tasks[data-v-70050220]{color:var(--muted-2);font-size:13px;padding:24px;text-align:center}.drawer-mask[data-v-70050220]{position:fixed;inset:0;z-index:110;display:flex;justify-content:flex-end;background:var(--modal-overlay);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.template-drawer[data-v-70050220]{position:relative;width:min(860px,94vw);min-width:max(620px,52vw);max-width:94vw;height:100%;overflow:auto;padding:22px;border-left:1px solid var(--panel-border);background:var(--modal-bg);box-shadow:-20px 0 60px #00000038}.drawer-resizer[data-v-70050220]{position:absolute;left:0;top:0;width:10px;height:100%;cursor:ew-resize;z-index:2}.drawer-resizer[data-v-70050220]:after{content:"";position:absolute;left:3px;top:50%;width:3px;height:72px;border-radius:999px;background:var(--line-strong);transform:translateY(-50%);opacity:.45}.drawer-head[data-v-70050220]{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:16px}.icon-btn[data-v-70050220]{width:34px;min-height:34px;display:grid;place-items:center;padding:0;border:1px solid var(--input-border);border-radius:8px;background:var(--input-bg);color:var(--muted);cursor:pointer}.loading-row[data-v-70050220]{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:13px;padding:20px}.template-list[data-v-70050220]{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:12px}.template-card[data-v-70050220]{position:relative;display:grid;gap:8px;padding:10px;border:1px solid var(--card-border);border-radius:10px;background:var(--card-bg);color:var(--text);text-align:left;cursor:pointer;transition:border-color .16s,background .16s,transform .16s}.template-card[data-v-70050220]:hover,.template-card.active[data-v-70050220]{border-color:var(--line-strong);background:var(--btn-ai-bg)}.template-card.active[data-v-70050220]{transform:translateY(-1px)}.template-card img[data-v-70050220]{width:100%;aspect-ratio:3 / 4;object-fit:cover;border-radius:8px;border:1px solid var(--line);background:var(--panel-bg)}.template-title[data-v-70050220]{font-size:14px;font-weight:700}.template-desc[data-v-70050220]{color:var(--muted);font-size:12px;line-height:1.45}.selected-badge[data-v-70050220]{position:absolute;right:18px;top:18px;display:inline-flex;align-items:center;gap:4px;padding:4px 8px;border-radius:999px;background:#000000b3;color:#fff;font-size:11px}.preview-overlay[data-v-70050220]{position:fixed;inset:0;z-index:120;display:flex;align-items:center;justify-content:center;padding:24px;background:var(--modal-overlay);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.preview-modal[data-v-70050220]{position:relative;max-width:min(960px,100%);max-height:calc(100vh - 48px);overflow:auto;border:1px solid var(--panel-border);border-radius:8px;background:var(--modal-bg)}.preview-modal img[data-v-70050220]{display:block;max-width:100%;height:auto}.preview-close[data-v-70050220]{position:sticky;top:10px;float:right;z-index:2;width:34px;min-height:34px;margin:10px;padding:0;border-radius:6px;background:#000000b8;color:#fff}.spin[data-v-70050220]{animation:spin-70050220 .8s linear infinite}@keyframes spin-70050220{to{transform:rotate(360deg)}}@media(max-width:920px){.studio-layout[data-v-70050220],.upload-grid[data-v-70050220]{grid-template-columns:1fr}.selected-template[data-v-70050220],.selected-template.reference-mode[data-v-70050220]{grid-template-columns:86px minmax(0,1fr)}.selected-template .clear-pill[data-v-70050220]{grid-column:1 / -1;justify-self:start}.task-item[data-v-70050220]{grid-template-columns:78px 1fr 72px}.task-time[data-v-70050220]{display:none}.template-drawer[data-v-70050220]{width:100vw!important;min-width:100vw;max-width:100vw}.drawer-resizer[data-v-70050220]{display:none}}:root,html[data-theme=dark]{--bg: #020617;--surface: #08101e;--surface-2: #0f172a;--surface-3: #111827;--surface-soft: rgba(15, 23, 42, .58);--line: rgba(125, 211, 252, .18);--line-strong: rgba(56, 189, 248, .34);--text: #e5f2ff;--muted: #94a3b8;--muted-2: #64748b;--primary: #38bdf8;--primary-strong: #67e8f9;--accent: #a78bfa;--warning: #fbbf24;--danger: #f87171;--success: #2dd4bf;--body-bg: radial-gradient(circle at 16% 6%, rgba(56, 189, 248, .14), transparent 24%), radial-gradient(circle at 88% 12%, rgba(167, 139, 250, .1), transparent 20%), linear-gradient(135deg, #020617 0%, #07111f 44%, #050816 100%);--button-text: #dff7ff;--button-bg: linear-gradient(135deg, rgba(14, 165, 233, .24), rgba(99, 102, 241, .18));--button-border: rgba(56, 189, 248, .32);--button-hover-border: rgba(103, 232, 249, .7);--input-bg: rgba(2, 6, 23, .48);--input-border: rgba(148, 163, 184, .2);--panel-bg: rgba(8, 16, 30, .72);--panel-border: rgba(148, 163, 184, .16);--card-bg: rgba(15, 23, 42, .56);--card-border: rgba(148, 163, 184, .14);--nav-bg: rgba(8, 16, 30, .9);--dropdown-bg: rgba(8, 16, 30, .98);--modal-bg: rgba(8, 16, 30, .98);--modal-overlay: rgba(2, 6, 23, .62);--drawer-bg: rgba(8, 16, 30, .96);--drawer-overlay: rgba(2, 6, 23, .52);--table-head-bg: rgba(15, 23, 42, .42);--grid-bg: linear-gradient(90deg, rgba(255, 255, 255, .04) 1px, transparent 1px), linear-gradient(rgba(255, 255, 255, .04) 1px, transparent 1px), rgba(2, 6, 23, .62);--btn-ai-text: #bae6fd;--btn-ai-bg: rgba(14, 165, 233, .12);--btn-ai-border: rgba(56, 189, 248, .32);--btn-ai-hover-border: rgba(103, 232, 249, .54);--shadow-panel: 0 8px 24px rgba(0, 0, 0, .18);--shadow-modal: 0 24px 60px rgba(0, 0, 0, .45);--status-succeeded-text: #99f6e4;--status-succeeded-bg: rgba(20, 184, 166, .12);--status-succeeded-border: rgba(45, 212, 191, .45);--status-failed-text: #fecaca;--status-failed-bg: rgba(248, 113, 113, .12);--status-failed-border: rgba(248, 113, 113, .5);--status-running-text: #bae6fd;--status-running-bg: rgba(14, 165, 233, .14);--status-running-border: rgba(56, 189, 248, .5);--status-pending-text: #fde68a;--status-pending-bg: rgba(251, 191, 36, .1);--status-pending-border: rgba(251, 191, 36, .45);--error-text: #fecaca;--error-bg: rgba(248, 113, 113, .08);color:var(--text);background:var(--bg);font-family:Inter,Microsoft YaHei,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;letter-spacing:0}html[data-theme=light]{--bg: #f7fbff;--surface: #ffffff;--surface-2: #f8fafc;--surface-3: #eef4fb;--surface-soft: rgba(255, 255, 255, .72);--line: rgba(15, 23, 42, .1);--line-strong: rgba(37, 99, 235, .28);--text: #243044;--muted: #6b7a90;--muted-2: #94a3b8;--primary: #2563eb;--primary-strong: #1d4ed8;--accent: #2563eb;--warning: #f59e0b;--danger: #dc2626;--success: #0f766e;--body-bg: radial-gradient(circle at 16% 10%, rgba(244, 63, 94, .12), transparent 24rem), radial-gradient(circle at 90% 12%, rgba(37, 99, 235, .14), transparent 28rem), linear-gradient(135deg, #fff7f8 0%, #ffffff 48%, #eef7ff 100%);--button-text: #41516a;--button-bg: rgba(255, 255, 255, .78);--button-border: rgba(15, 23, 42, .12);--button-hover-border: rgba(37, 99, 235, .26);--input-bg: rgba(255, 255, 255, .84);--input-border: rgba(15, 23, 42, .12);--panel-bg: rgba(255, 255, 255, .82);--panel-border: rgba(15, 23, 42, .09);--card-bg: rgba(255, 255, 255, .72);--card-border: rgba(15, 23, 42, .08);--nav-bg: rgba(255, 255, 255, .78);--dropdown-bg: rgba(255, 255, 255, .98);--modal-bg: #ffffff;--modal-overlay: rgba(15, 23, 42, .34);--drawer-bg: rgba(255, 255, 255, .96);--drawer-overlay: rgba(15, 23, 42, .28);--table-head-bg: rgba(248, 250, 252, .82);--grid-bg: linear-gradient(90deg, rgba(15, 23, 42, .035) 1px, transparent 1px), linear-gradient(rgba(15, 23, 42, .035) 1px, transparent 1px), #f8fafc;--btn-ai-text: #1d4ed8;--btn-ai-bg: rgba(37, 99, 235, .07);--btn-ai-border: rgba(37, 99, 235, .2);--btn-ai-hover-border: rgba(37, 99, 235, .32);--shadow-panel: 0 8px 24px rgba(15, 23, 42, .08);--shadow-modal: 0 24px 60px rgba(15, 23, 42, .18);--status-succeeded-text: #0f766e;--status-succeeded-bg: rgba(20, 184, 166, .1);--status-succeeded-border: rgba(20, 184, 166, .28);--status-failed-text: #b91c1c;--status-failed-bg: rgba(254, 242, 242, .92);--status-failed-border: rgba(239, 68, 68, .26);--status-running-text: #92400e;--status-running-bg: rgba(245, 158, 11, .12);--status-running-border: rgba(245, 158, 11, .3);--status-pending-text: #92400e;--status-pending-bg: rgba(245, 158, 11, .12);--status-pending-border: rgba(245, 158, 11, .3);--error-text: #b91c1c;--error-bg: rgba(254, 242, 242, .92);color:var(--text);background:var(--bg)}*{box-sizing:border-box;scrollbar-width:thin;scrollbar-color:rgba(148,163,184,.22) transparent}html{scroll-behavior:smooth}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{border-radius:3px;background:#94a3b838}::-webkit-scrollbar-thumb:hover{background:#94a3b861}::-webkit-scrollbar-corner{background:transparent}body{margin:0;min-width:320px;min-height:100dvh;background:var(--body-bg);color:var(--text);overflow-x:hidden}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:34px;border:1px solid var(--button-border);border-radius:6px;padding:0 12px;font-size:13px;color:var(--button-text);background:var(--button-bg);cursor:pointer;transition:border-color .18s ease,transform .18s ease,background .18s ease}button:hover:not(:disabled){border-color:var(--button-hover-border)}button:disabled{cursor:not-allowed;opacity:.45}input,textarea,select{width:100%;border:1px solid var(--input-border);border-radius:6px;padding:8px 10px;color:var(--text);background:var(--input-bg);outline:none;font-size:13px;min-height:36px}input:focus,textarea:focus,select:focus{border-color:var(--line-strong);box-shadow:0 0 0 3px #38bdf81f}h1,h2,p{margin-top:0}h1{margin-bottom:0;font-size:20px;line-height:1.2}h2{margin-bottom:0;font-size:14px}.app-shell{min-height:100dvh}#asset-structure,#generation-records,#export-records{scroll-margin-top:18px}.side-panel{border-right:1px solid var(--line);background:var(--panel-bg);padding:24px 18px;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.brand-row{display:flex;align-items:center;gap:12px}.brand-mark{width:38px;height:38px;border-radius:8px;background:url(/brand-icon.svg) center / cover no-repeat;box-shadow:0 0 26px #38bdf875}.brand-name{display:block;font-size:18px}.nav-list{display:grid;gap:8px;margin-top:28px}.nav-item{display:flex;align-items:center;gap:10px;min-height:44px;border:1px solid transparent;border-radius:8px;padding:0 12px;color:var(--muted)}.nav-item.active{border-color:#38bdf85c;background:#0ea5e91f;color:var(--text);box-shadow:inset 3px 0 0 var(--primary)}.new-project,.project-list{display:grid;gap:10px;margin-top:26px}.new-project label,.form-grid label{display:grid;gap:7px;color:var(--muted);font-size:13px}.inline-control,.spec-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}.spec-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto}.project-button{justify-content:flex-start;width:100%;min-height:42px;color:var(--muted);background:var(--card-bg)}.project-button.active{color:var(--text);border-color:#67e8f994}.eyebrow{margin-bottom:8px;color:var(--primary-strong);font-size:12px;text-transform:uppercase}.service-pill,.status-chip{border:1px solid var(--button-border);border-radius:999px;padding:4px 10px;color:var(--primary-strong);background:var(--btn-ai-bg);font-size:12px;white-space:nowrap}.workbench-grid{display:grid;grid-template-columns:minmax(280px,.66fr) minmax(480px,1.34fr);gap:12px;align-items:start}.panel{border:1px solid var(--panel-border);border-radius:8px;background:var(--panel-bg);box-shadow:var(--shadow-panel);padding:14px}.panel-head,.list-head{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:34px;margin-bottom:12px}.panel-head span,.small-muted,.export-panel p{color:var(--muted);font-size:13px}.upload-panel,.structure-panel{min-height:180px}.info-panel{grid-row:span 2}.button-row,.job-strip{display:flex;flex-wrap:wrap;gap:8px}.drop-zone{display:grid;place-items:center;gap:6px;min-height:112px;border:1px dashed var(--line-strong);border-radius:8px;color:var(--primary-strong);background:var(--btn-ai-bg);cursor:pointer;font-size:13px}.drop-zone.disabled{cursor:not-allowed;opacity:.5}.drop-zone input{display:none}.image-list,.dynamic-list,.structure-list,.asset-grid{display:grid;gap:8px;margin-top:10px}.image-grid{grid-template-columns:repeat(auto-fill,minmax(118px,1fr))}.image-card{position:relative;display:grid;grid-template-rows:1fr auto;gap:6px;border:1px solid var(--card-border);border-radius:8px;background:var(--card-bg);padding:8px;transition:border-color .18s ease}.image-card:hover{border-color:var(--line-strong)}.image-thumb{display:grid;place-items:center;aspect-ratio:1 / 1;min-height:0;max-height:none;overflow:hidden;border-radius:6px;background:var(--grid-bg);background-size:16px 16px}.image-thumb img{width:100%;height:100%;object-fit:cover}.image-name{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;color:var(--muted)}.image-delete{position:absolute;top:4px;right:4px;width:26px;height:26px;padding:0;border-radius:6px;border-color:var(--status-failed-border);background:var(--panel-bg);color:var(--danger);opacity:0;transition:opacity .18s ease}.image-card:hover .image-delete{opacity:1}.image-row,.structure-item,.asset-card,.empty-state{border:1px solid var(--card-border);border-radius:6px;background:var(--card-bg);padding:8px}.image-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}.image-row span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 12px}.form-grid .wide{grid-column:1 / -1}.dynamic-list{margin-top:10px}.list-head button,.image-row button,.item-actions button,.spec-row button,.inline-control button{width:36px;padding:0}.structure-panel{grid-column:1 / -1}.structure-item{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:center;padding:10px}.toggle-line{display:flex;align-items:center;gap:10px;min-width:0}.toggle-line input{width:16px;height:16px;accent-color:var(--primary)}.item-actions{display:flex;gap:6px}.preview-panel{min-height:200px}.status-chip.muted{color:var(--muted);border-color:var(--input-border);background:var(--card-bg)}.status-chip.pending{border-color:var(--status-pending-border);color:var(--status-pending-text);background:var(--status-pending-bg)}.status-chip.running,.status-chip.generating{border-color:var(--status-running-border);color:var(--status-running-text);background:var(--status-running-bg)}.status-chip.succeeded{border-color:var(--status-succeeded-border);color:var(--status-succeeded-text);background:var(--status-succeeded-bg)}.status-chip.failed{border-color:var(--status-failed-border);color:var(--status-failed-text);background:var(--status-failed-bg)}.progress-box{display:grid;gap:6px;margin-top:8px;border:1px solid var(--card-border);border-radius:6px;padding:8px;background:var(--card-bg)}.progress-box div{display:grid;grid-template-columns:56px minmax(0,1fr);gap:6px;align-items:center}.progress-box strong{color:var(--muted);font-size:12px}.progress-box span{min-width:0;overflow-wrap:anywhere;color:var(--text);font-size:12px}.error-text{margin:0;border-left:3px solid var(--danger);padding-left:10px;color:var(--error-text);font-size:13px;line-height:1.5}.asset-grid{grid-template-columns:1fr}.asset-card{display:grid;gap:10px}.asset-preview{display:grid;place-items:center;aspect-ratio:4 / 3;min-height:120px;overflow:hidden;border:1px solid var(--card-border);border-radius:6px;color:var(--muted);background:var(--grid-bg);background-size:16px 16px}.asset-preview img{width:100%;height:100%;object-fit:cover}.export-panel{display:grid;gap:8px}.toast-line{width:fit-content;margin:8px 0 0;border:1px solid var(--line-strong);border-radius:999px;padding:4px 10px;color:var(--primary-strong);background:var(--btn-ai-bg);font-size:12px}.btn-ai{border-color:var(--btn-ai-border);background:var(--btn-ai-bg);color:var(--btn-ai-text)}.btn-ai:hover:not(:disabled){border-color:var(--btn-ai-hover-border)}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spin{animation:spin 1.2s linear infinite}.empty-state{color:var(--muted);text-align:center}.auth-shell{min-height:100dvh;display:grid;place-items:center;padding:24px}.auth-card{width:min(420px,100%);border:1px solid var(--panel-border);border-radius:8px;padding:26px;background:var(--panel-bg);box-shadow:var(--shadow-modal)}.auth-brand{margin-bottom:24px}.auth-card header{margin-bottom:20px}.auth-card h1{margin-bottom:8px;font-size:22px}.auth-card p{margin-bottom:0;color:var(--muted);line-height:1.6}.auth-form{display:grid;gap:14px}.auth-form label{display:grid;gap:7px;color:var(--muted);font-size:13px}.auth-input{display:grid;grid-template-columns:18px minmax(0,1fr);gap:8px;align-items:center;border:1px solid var(--input-border);border-radius:6px;padding:0 10px;background:var(--input-bg)}.auth-input:focus-within{border-color:var(--line-strong);box-shadow:0 0 0 3px #38bdf81f}.auth-input.invalid{border-color:var(--status-failed-border)}.auth-input.invalid:focus-within{box-shadow:0 0 0 3px #f871711f}.auth-input svg{color:var(--primary-strong)}.auth-input input{border:0;padding-inline:0;background:transparent;box-shadow:none}.auth-input input:focus{box-shadow:none}.auth-error{color:var(--error-text);font-size:12px}.auth-form button{min-height:40px;margin-top:4px}.auth-switch{margin-top:18px;text-align:center;font-size:13px}.auth-switch a{color:var(--primary-strong)}@media(max-width:900px){.form-grid{grid-template-columns:1fr}.info-panel,.structure-panel{grid-column:auto;grid-row:auto}.structure-item{grid-template-columns:minmax(0,1fr)}.item-actions{justify-content:flex-end}}@media(max-width:520px){.panel{padding:12px}.preview-panel .panel-head{align-items:stretch;flex-direction:column}.preview-panel .button-row button{flex:1 1 130px}.inline-control,.spec-row{grid-template-columns:minmax(0,1fr) 36px}.spec-row{grid-template-columns:minmax(0,1fr)}.spec-row button{justify-self:end}}
