.login-overlay[data-v-d2ace5f7]{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--bg);display:flex;align-items:center;justify-content:center;z-index:1000}.login-card[data-v-d2ace5f7]{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:48px 40px;width:100%;max-width:400px;text-align:center}.login-title[data-v-d2ace5f7]{font-size:28px;font-weight:700;margin:0 0 8px;color:var(--text)}.login-subtitle[data-v-d2ace5f7]{color:var(--text2);font-size:14px;margin:0 0 32px}.login-form[data-v-d2ace5f7]{display:flex;flex-direction:column;gap:12px}.login-input[data-v-d2ace5f7]{background:var(--bg);border:1px solid var(--border);color:var(--text);padding:12px 16px;border-radius:var(--radius);font-size:15px;width:100%;box-sizing:border-box}.login-input[data-v-d2ace5f7]:focus{outline:none;border-color:var(--accent)}.login-btn[data-v-d2ace5f7]{width:100%;padding:12px;font-size:15px}.login-error[data-v-d2ace5f7]{color:var(--error);font-size:13px;margin:16px 0 0}:root{--bg: #0f0f14;--surface: #1a1a24;--surface2: #24243a;--border: #2e2e48;--text: #e8e8f0;--text2: #9999b0;--accent: #7c5cfc;--accent-hover: #6a48e8;--success: #34d399;--error: #f87171;--warning: #fbbf24;--radius: 8px}body{background:var(--bg);color:var(--text);line-height:1.5}a{color:var(--accent);text-decoration:none}a:hover{color:var(--accent-hover)}.app{min-height:100vh;display:flex;flex-direction:column}.header{background:var(--surface);border-bottom:1px solid var(--border);padding:0 24px}.header-inner{max-width:1200px;margin:0 auto;display:flex;align-items:center;height:56px;gap:24px}.logo{font-size:18px;font-weight:700;color:var(--text)}.nav{display:flex;gap:16px}.nav a{color:var(--text2);font-size:14px;padding:4px 0;border-bottom:2px solid transparent}.nav a.router-link-exact-active{color:var(--accent);border-bottom-color:var(--accent)}.user-block{margin-left:auto;display:flex;align-items:center;gap:12px}.user-name{color:var(--text2);font-size:14px}.btn-logout{background:transparent;border:1px solid var(--border);color:var(--text2);padding:5px 14px;border-radius:var(--radius);font-size:13px;cursor:pointer;transition:all .15s}.btn-logout:hover{border-color:var(--error);color:var(--error)}.main{flex:1;max-width:1200px;margin:0 auto;padding:24px;width:100%}.btn{background:var(--accent);color:#fff;border:none;padding:10px 20px;border-radius:var(--radius);font-size:14px;font-weight:600;cursor:pointer;transition:background .15s}.btn:hover{background:var(--accent-hover)}.btn:disabled{opacity:.5;cursor:not-allowed}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:20px}.ratio-grid[data-v-78eb63b5]{display:flex;gap:8px;flex-wrap:wrap}.ratio-btn[data-v-78eb63b5]{background:var(--bg);border:2px solid var(--border);border-radius:var(--radius);padding:8px;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:4px;min-width:80px;transition:border-color .15s;color:var(--text)}.ratio-btn[data-v-78eb63b5]:hover{border-color:var(--accent)}.ratio-btn.active[data-v-78eb63b5]{border-color:var(--accent);background:var(--surface2)}.ratio-preview[data-v-78eb63b5]{width:40px;max-height:50px;border:1px solid var(--text2);border-radius:3px}.ratio-label[data-v-78eb63b5]{font-size:13px;font-weight:600}.ratio-size[data-v-78eb63b5]{font-size:10px;color:var(--text2)}.generate-form[data-v-13687a01]{margin-bottom:24px}.form-title[data-v-13687a01]{font-size:18px;margin-bottom:16px}.field[data-v-13687a01]{margin-bottom:16px}.field>label[data-v-13687a01]{display:block;font-size:13px;color:var(--text2);margin-bottom:6px;font-weight:500}.input[data-v-13687a01]{width:100%;background:var(--bg);border:1px solid var(--border);color:var(--text);padding:10px 12px;border-radius:var(--radius);font-size:14px;font-family:inherit}.input[data-v-13687a01]:focus{outline:none;border-color:var(--accent)}.textarea[data-v-13687a01]{resize:vertical}.toggle-group[data-v-13687a01]{display:flex;gap:4px}.toggle-group button[data-v-13687a01]{background:var(--bg);border:1px solid var(--border);color:var(--text2);padding:8px 16px;border-radius:var(--radius);cursor:pointer;font-size:13px;transition:all .15s}.toggle-group button[data-v-13687a01]:hover{border-color:var(--accent)}.toggle-group button.active[data-v-13687a01]{background:var(--accent);color:#fff;border-color:var(--accent)}.toggle-group button[data-v-13687a01]:disabled{opacity:.4;cursor:not-allowed}.hint[data-v-13687a01]{font-size:12px;color:var(--text2);margin-top:4px;display:block}.dropzone[data-v-13687a01]{border:2px dashed var(--border);border-radius:var(--radius);padding:20px;text-align:center;color:var(--text2);font-size:14px;transition:border-color .15s}.dropzone.drag-over[data-v-13687a01]{border-color:var(--accent)}.upload-label[data-v-13687a01]{color:var(--accent);cursor:pointer;text-decoration:underline}.file-list[data-v-13687a01]{margin-top:10px;display:flex;flex-wrap:wrap;gap:8px}.file-item[data-v-13687a01]{background:var(--surface2);padding:4px 10px;border-radius:4px;font-size:12px;display:flex;align-items:center;gap:6px}.remove-file[data-v-13687a01]{background:none;border:none;color:var(--error);cursor:pointer;font-size:16px;line-height:1}.checkbox-field label[data-v-13687a01]{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--text);cursor:pointer}.checkbox-field input[type=checkbox][data-v-13687a01]{accent-color:var(--accent)}.error-msg[data-v-13687a01]{background:#f871711a;border:1px solid var(--error);color:var(--error);padding:8px 12px;border-radius:var(--radius);font-size:13px;margin-bottom:12px}.submit-btn[data-v-13687a01]{width:100%}.task-card[data-v-1acb6f4b]{padding:14px 16px;margin-bottom:8px;cursor:pointer;transition:border-color .2s,background .15s}.task-card[data-v-1acb6f4b]:hover{background:var(--surface2)}.task-card.status-completed[data-v-1acb6f4b]{border-left:3px solid var(--success)}.task-card.status-failed[data-v-1acb6f4b]{border-left:3px solid var(--error)}.task-card.status-in_progress[data-v-1acb6f4b]{border-left:3px solid var(--warning)}.task-card.status-queued[data-v-1acb6f4b]{border-left:3px solid var(--text2)}.task-header[data-v-1acb6f4b]{display:flex;justify-content:space-between;align-items:center;gap:12px}.header-left[data-v-1acb6f4b],.header-right[data-v-1acb6f4b]{display:flex;align-items:center;gap:8px}.task-id[data-v-1acb6f4b]{font-weight:600;font-size:14px}.task-type-badge[data-v-1acb6f4b]{font-size:11px;padding:2px 8px;border-radius:4px;background:var(--surface2);color:var(--text2)}.meta-pill[data-v-1acb6f4b]{font-size:11px;color:var(--text2)}.task-status[data-v-1acb6f4b]{font-size:13px;font-weight:500;display:flex;align-items:center;gap:5px}.task-status.status-completed[data-v-1acb6f4b]{color:var(--success)}.task-status.status-failed[data-v-1acb6f4b]{color:var(--error)}.task-status.status-in_progress[data-v-1acb6f4b]{color:var(--warning)}.task-status.status-queued[data-v-1acb6f4b]{color:var(--text2)}.task-timer-inline[data-v-1acb6f4b]{font-size:13px;font-weight:600;color:var(--warning)}.task-time-inline[data-v-1acb6f4b]{font-size:12px;color:var(--text2)}.chevron[data-v-1acb6f4b]{font-size:12px;color:var(--text2);transition:transform .2s;-webkit-user-select:none;user-select:none}.chevron.open[data-v-1acb6f4b]{transform:rotate(180deg)}.pulse[data-v-1acb6f4b]{width:8px;height:8px;border-radius:50%;background:currentColor;animation:pulse-anim-1acb6f4b 1.5s ease-in-out infinite}@keyframes pulse-anim-1acb6f4b{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.8)}}.prompt-preview[data-v-1acb6f4b]{margin-top:6px;font-size:12px;color:var(--text2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.task-body[data-v-1acb6f4b]{margin-top:14px;padding-top:14px;border-top:1px solid var(--border);cursor:default}.prompt-full .label[data-v-1acb6f4b]{font-size:11px;color:var(--text2);text-transform:uppercase}.prompt-full p[data-v-1acb6f4b]{margin-top:4px;font-size:14px;line-height:1.5;white-space:pre-wrap;word-break:break-word}.task-timer[data-v-1acb6f4b]{margin-top:12px;font-size:24px;font-weight:600;color:var(--warning)}.task-error[data-v-1acb6f4b]{margin-top:10px;font-size:13px;color:var(--error);background:#f871711a;padding:8px 12px;border-radius:var(--radius)}.task-image[data-v-1acb6f4b]{margin-top:12px;text-align:center}.task-image img[data-v-1acb6f4b]{max-width:100%;max-height:600px;border-radius:var(--radius);border:1px solid var(--border)}.open-link[data-v-1acb6f4b]{display:inline-block;margin-top:8px;font-size:13px}.loading-image[data-v-1acb6f4b]{margin-top:12px;font-size:13px;color:var(--text2)}.timings[data-v-1acb6f4b]{margin-top:12px;display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:6px 16px}.timing-item[data-v-1acb6f4b]{display:flex;justify-content:space-between;font-size:12px;padding:3px 0}.timing-label[data-v-1acb6f4b]{color:var(--text2)}.timing-value[data-v-1acb6f4b]{font-weight:600}.timing-value.mono[data-v-1acb6f4b]{font-family:monospace;font-size:11px}.no-key[data-v-2b19afa8]{text-align:center;padding:40px;color:var(--text2)}.section-title[data-v-2b19afa8]{font-size:16px;margin-bottom:12px;color:var(--text2)}.empty[data-v-2b19afa8]{color:var(--text2);font-size:14px;text-align:center;padding:20px}.modal-overlay[data-v-4d1c6c88]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal-content[data-v-4d1c6c88]{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);max-width:720px;width:100%;max-height:85vh;overflow-y:auto;padding:24px;position:relative}.modal-close[data-v-4d1c6c88]{position:absolute;top:12px;right:16px;background:none;border:none;color:var(--text2);font-size:24px;cursor:pointer;line-height:1;padding:4px}.modal-close[data-v-4d1c6c88]:hover{color:var(--text)}.modal-loading[data-v-4d1c6c88],.modal-error[data-v-4d1c6c88]{text-align:center;padding:40px 0;color:var(--text2);font-size:14px}.modal-error[data-v-4d1c6c88]{color:var(--error)}.modal-title[data-v-4d1c6c88]{font-size:18px;margin-bottom:16px}.detail-grid[data-v-4d1c6c88]{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px 16px;margin-bottom:20px}.detail-item[data-v-4d1c6c88]{display:flex;justify-content:space-between;align-items:center;font-size:13px;padding:6px 0;border-bottom:1px solid var(--border)}.detail-label[data-v-4d1c6c88]{color:var(--text2);font-size:12px}.detail-section[data-v-4d1c6c88]{margin-bottom:16px}.detail-section-title[data-v-4d1c6c88]{font-size:13px;font-weight:600;color:var(--text2);margin-bottom:8px;text-transform:uppercase}.prompt-block[data-v-4d1c6c88]{background:var(--surface2);border:1px solid var(--border);border-radius:var(--radius);padding:12px;font-size:13px;line-height:1.6;white-space:pre-wrap;word-break:break-word}.error-block[data-v-4d1c6c88]{background:#f871711a;border:1px solid var(--error);color:var(--error);border-radius:var(--radius);padding:12px;font-size:13px}.images-row[data-v-4d1c6c88]{display:flex;gap:12px;overflow-x:auto;padding-bottom:4px}.thumb-img[data-v-4d1c6c88]{width:160px;height:160px;object-fit:cover;border-radius:var(--radius);border:1px solid var(--border);flex-shrink:0}.result-img[data-v-4d1c6c88]{max-width:100%;border-radius:var(--radius);border:1px solid var(--border)}.mono[data-v-4d1c6c88]{font-family:monospace;font-size:12px}.status-badge[data-v-4d1c6c88]{padding:2px 8px;border-radius:10px;font-size:11px;font-weight:600}.status-badge.status-completed[data-v-4d1c6c88]{background:#34d39926;color:var(--success)}.status-badge.status-failed[data-v-4d1c6c88]{background:#f8717126;color:var(--error)}.status-badge.status-in_progress[data-v-4d1c6c88]{background:#fbbf2426;color:var(--warning)}.status-badge.status-queued[data-v-4d1c6c88]{background:#9999b026;color:var(--text2)}h2[data-v-17374b6f]{margin-bottom:20px}.error-msg[data-v-17374b6f]{background:#f871711a;border:1px solid var(--error);color:var(--error);padding:8px 12px;border-radius:var(--radius);font-size:13px;margin-bottom:16px}.stats-grid[data-v-17374b6f]{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;margin-bottom:20px}.stat-card[data-v-17374b6f]{text-align:center}.stat-value[data-v-17374b6f]{font-size:28px;font-weight:700}.stat-label[data-v-17374b6f]{font-size:12px;color:var(--text2);margin-top:4px}.breakdown-row[data-v-17374b6f]{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;margin-bottom:24px}.breakdown h4[data-v-17374b6f]{margin-bottom:8px;font-size:14px}.breakdown-item[data-v-17374b6f]{display:flex;justify-content:space-between;font-size:13px;padding:4px 0;border-bottom:1px solid var(--border)}.section-title[data-v-17374b6f]{font-size:16px;margin:20px 0 12px;color:var(--text2)}.filters[data-v-17374b6f]{display:flex;gap:8px;margin-bottom:12px}.filter-select[data-v-17374b6f]{background:var(--surface);border:1px solid var(--border);color:var(--text);padding:8px 12px;border-radius:var(--radius);font-size:13px}.orders-table-wrap[data-v-17374b6f]{overflow-x:auto;margin-bottom:8px}.orders-table[data-v-17374b6f]{width:100%;border-collapse:collapse;font-size:13px}.orders-table th[data-v-17374b6f],.orders-table td[data-v-17374b6f]{padding:10px 12px;text-align:left;border-bottom:1px solid var(--border);white-space:nowrap}.orders-table th[data-v-17374b6f]{color:var(--text2);font-weight:500;font-size:12px;text-transform:uppercase}.orders-table tr[data-v-17374b6f]:hover{background:var(--surface2)}.order-row[data-v-17374b6f]{cursor:pointer}.mono[data-v-17374b6f]{font-family:monospace;font-size:12px}.text-error[data-v-17374b6f]{color:var(--error);font-weight:600}.status-badge[data-v-17374b6f]{padding:2px 8px;border-radius:10px;font-size:11px;font-weight:600}.status-badge.status-completed[data-v-17374b6f]{background:#34d39926;color:var(--success)}.status-badge.status-failed[data-v-17374b6f]{background:#f8717126;color:var(--error)}.status-badge.status-in_progress[data-v-17374b6f]{background:#fbbf2426;color:var(--warning)}.status-badge.status-queued[data-v-17374b6f]{background:#9999b026;color:var(--text2)}.workers-table[data-v-17374b6f]{margin-bottom:24px}.pagination[data-v-17374b6f]{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:16px;font-size:13px;color:var(--text2)}.pagination .btn[data-v-17374b6f]{padding:6px 14px;font-size:12px}
