.login-overlay[data-v-71291d8a]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2000;background:#000000b3;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;padding:20px}.login-card[data-v-71291d8a]{position:relative;width:100%;max-width:380px;background:var(--bg-raised);border:1px solid var(--border-active);border-radius:var(--radius-xl);padding:32px 28px;animation:slideUp .3s ease}.login-close[data-v-71291d8a]{position:absolute;top:16px;right:16px;width:32px;height:32px;border-radius:var(--radius-sm);color:var(--text-muted);display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast)}.login-close[data-v-71291d8a]:hover{background:var(--bg-hover);color:var(--text-primary)}.login-header[data-v-71291d8a]{text-align:center;margin-bottom:24px}.login-header h2[data-v-71291d8a]{font-family:var(--font-display);font-size:1.5rem;font-weight:600;color:var(--text-primary);margin-bottom:6px}.login-header p[data-v-71291d8a]{font-size:.8125rem;color:var(--text-secondary)}.login-error[data-v-71291d8a]{display:flex;align-items:center;gap:8px;padding:10px 14px;border-radius:var(--radius-md);background:#dc3c3c1a;border:1px solid rgba(220,60,60,.2);color:#e88;font-size:.8125rem;margin-bottom:16px}.field[data-v-71291d8a]{margin-bottom:16px}.field label[data-v-71291d8a]{display:block;font-size:.75rem;font-weight:600;color:var(--text-secondary);margin-bottom:6px}.field input[data-v-71291d8a]{width:100%;padding:10px 14px;border-radius:var(--radius-md);background:var(--bg-base);border:1px solid var(--border);font-size:.875rem;color:var(--text-primary);transition:border-color var(--transition-fast)}.field input[data-v-71291d8a]::placeholder{color:var(--text-muted)}.field input[data-v-71291d8a]:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.code-row[data-v-71291d8a]{display:flex;gap:10px}.code-row input[data-v-71291d8a]{flex:1}.code-btn[data-v-71291d8a]{flex-shrink:0;padding:10px 16px;border-radius:var(--radius-md);background:var(--bg-elevated);border:1px solid var(--border);color:var(--text-secondary);font-size:.8125rem;white-space:nowrap;min-width:100px;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast)}.code-btn[data-v-71291d8a]:hover:not(:disabled){background:var(--bg-hover);color:var(--text-primary)}.code-btn[data-v-71291d8a]:disabled{opacity:.5;cursor:not-allowed}.login-btn[data-v-71291d8a]{width:100%;padding:12px;border-radius:var(--radius-md);background:var(--accent);color:var(--bg-deepest);font-size:.9375rem;font-weight:600;display:flex;align-items:center;justify-content:center;gap:8px;transition:all var(--transition-fast);margin-top:8px}.login-btn[data-v-71291d8a]:hover:not(:disabled){filter:brightness(1.1)}.login-btn[data-v-71291d8a]:disabled{opacity:.6;cursor:not-allowed}.mini-spinner[data-v-71291d8a]{width:16px;height:16px;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}.modal-fade-enter-active[data-v-71291d8a]{transition:opacity .2s ease}.modal-fade-leave-active[data-v-71291d8a]{transition:opacity .15s ease}.modal-fade-enter-from[data-v-71291d8a],.modal-fade-leave-to[data-v-71291d8a]{opacity:0}.fade-enter-active[data-v-71291d8a],.fade-leave-active[data-v-71291d8a]{transition:all .2s ease}.fade-enter-from[data-v-71291d8a],.fade-leave-to[data-v-71291d8a]{opacity:0;transform:translateY(-4px)}.input-area[data-v-ae867c39]{border-top:1px solid var(--border);background:var(--bg-deep);padding:0 24px 12px}.input-area--center[data-v-ae867c39]{border-top:none;background:transparent;width:100%;max-width:580px;margin:0 auto;padding:0 20px 12px}.input-container[data-v-ae867c39]{max-width:820px;margin:0 auto;padding-top:12px}.ref-previews[data-v-ae867c39]{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.ref-thumb[data-v-ae867c39]{position:relative;width:56px;height:56px;border-radius:var(--radius-sm);overflow:hidden;border:1px solid var(--border);background:var(--bg-raised);flex-shrink:0}.ref-thumb-img[data-v-ae867c39]{display:block;width:100%;height:100%;object-fit:cover}.ref-uploading[data-v-ae867c39]{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#0006}.loading-spinner-sm[data-v-ae867c39]{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}.ref-remove[data-v-ae867c39]{position:absolute;top:2px;right:2px;width:18px;height:18px;border-radius:50%;background:#0009;color:#fff;display:flex;align-items:center;justify-content:center;transition:background var(--transition-fast)}.ref-remove[data-v-ae867c39]:hover{background:#dc3c3ccc}.input-row[data-v-ae867c39]{display:flex;align-items:flex-end;gap:8px;background:var(--bg-raised);border:1px solid var(--border);border-radius:var(--radius-lg) var(--radius-lg) 0 0;border-bottom:none;padding:8px 8px 8px 4px;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.input-row[data-v-ae867c39]:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.input-wrapper[data-v-ae867c39]{flex:1}textarea[data-v-ae867c39]{width:100%;border:none;background:transparent;resize:none;font-size:.9375rem;line-height:1.5;padding:6px 4px;max-height:160px;overflow-y:auto;color:var(--text-primary);font-family:var(--font-body);outline:none}textarea[data-v-ae867c39]::placeholder{color:var(--text-muted)}.send-btn[data-v-ae867c39]{width:40px;height:40px;border-radius:var(--radius-md);background:var(--bg-elevated);color:var(--text-muted);display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast);flex-shrink:0}.send-btn.ready[data-v-ae867c39]{background:var(--accent);color:var(--bg-deepest)}.send-btn.ready[data-v-ae867c39]:hover{filter:brightness(1.1);transform:scale(1.05)}.send-btn[data-v-ae867c39]:disabled{opacity:.4;cursor:not-allowed}.toolbar-row[data-v-ae867c39]{display:flex;align-items:center;gap:8px;background:var(--bg-raised);border:1px solid var(--border);border-radius:0 0 var(--radius-lg) var(--radius-lg);padding:6px 8px}.input-row:focus-within+.toolbar-row[data-v-ae867c39]{border-color:var(--accent)}.toolbar-actions[data-v-ae867c39]{display:flex;align-items:center;flex-shrink:0}.toolbar-selects[data-v-ae867c39]{display:flex;gap:6px;flex:1;min-width:0}.toolbar-select-group[data-v-ae867c39]{flex:1;min-width:0}.toolbar-select[data-v-ae867c39]{width:100%;padding:5px 24px 5px 8px;border-radius:var(--radius-sm);background:var(--bg-elevated);border:1px solid var(--border);color:var(--text-primary);font-size:.75rem;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='10' height='10' viewBox='0 0 24 24' fill='none" + " stroke='%23888' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 6px center;transition:border-color var(--transition-fast)}.toolbar-select[data-v-ae867c39]:hover{border-color:var(--border-active)}.toolbar-select[data-v-ae867c39]:focus{border-color:var(--accent);outline:none}.upload-toggle[data-v-ae867c39]{padding:6px;border-radius:var(--radius-sm);color:var(--text-muted);transition:all var(--transition-fast)}.upload-toggle[data-v-ae867c39]:hover{background:var(--bg-hover);color:var(--text-primary)}.upload-toggle.active[data-v-ae867c39]{color:var(--accent)}.hidden-input[data-v-ae867c39]{display:none}@media(max-width:640px){.input-area[data-v-ae867c39]{padding:0 12px 8px}.toolbar-selects[data-v-ae867c39]{flex-wrap:wrap}.toolbar-select-group[data-v-ae867c39]{min-width:80px}}.image-card[data-v-1a37cc6b]{border-radius:var(--radius-lg);overflow:hidden;background:var(--bg-raised);border:1px solid var(--border);cursor:pointer;transition:all var(--transition-base)}.image-card[data-v-1a37cc6b]:hover{border-color:var(--border-active);box-shadow:var(--shadow-card);transform:translateY(-2px)}.image-wrapper[data-v-1a37cc6b]{position:relative;overflow:hidden}.image-wrapper img[data-v-1a37cc6b]{display:block;width:100%;height:100%;object-fit:cover;background:var(--bg-elevated)}.image-card:hover .image-size-badge[data-v-1a37cc6b]{opacity:1}.image-size-badge[data-v-1a37cc6b]{position:absolute;top:8px;right:8px;padding:2px 8px;border-radius:4px;background:#0009;color:#fffc;font-size:.625rem;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);opacity:0;transition:opacity var(--transition-fast);z-index:1}.image-overlay[data-v-1a37cc6b]{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,rgba(0,0,0,.7) 0%,transparent 50%);display:flex;align-items:flex-end;justify-content:center;padding:16px;opacity:0;transition:opacity var(--transition-base)}.image-card:hover .image-overlay[data-v-1a37cc6b]{opacity:1}.overlay-actions[data-v-1a37cc6b]{display:flex;gap:8px}.action-btn[data-v-1a37cc6b]{width:40px;height:40px;border-radius:var(--radius-md);background:#ffffff1f;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:#fff;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast);border:1px solid rgba(255,255,255,.1)}.action-btn[data-v-1a37cc6b]:hover{background:#ffffff38;transform:scale(1.08)}.action-btn--edit[data-v-1a37cc6b]{background:#c9a84c40;border-color:#c9a84c4d}.action-btn--edit[data-v-1a37cc6b]:hover{background:#c9a84c66}.lightbox-overlay[data-v-12d0de6c]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:#000000e0;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);display:flex;align-items:center;justify-content:center;padding:40px}.lightbox-close[data-v-12d0de6c]{position:absolute;top:20px;right:20px;width:44px;height:44px;border-radius:50%;background:#ffffff1a;color:#fff;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast);z-index:10}.lightbox-close[data-v-12d0de6c]:hover{background:#fff3;transform:scale(1.1)}.lightbox-content[data-v-12d0de6c]{max-width:90vw;max-height:85vh;display:flex;align-items:center;justify-content:center}.lightbox-image[data-v-12d0de6c]{max-width:100%;max-height:85vh;object-fit:contain;border-radius:var(--radius-md);box-shadow:0 20px 60px #00000080}.lightbox-actions[data-v-12d0de6c]{position:absolute;bottom:24px;left:50%;transform:translate(-50%);display:flex;gap:8px}.lb-action[data-v-12d0de6c]{display:flex;align-items:center;gap:6px;padding:10px 18px;border-radius:var(--radius-md);background:#ffffff1a;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:#fff;font-size:.8125rem;font-weight:500;transition:all var(--transition-fast);border:1px solid rgba(255,255,255,.1)}.lb-action[data-v-12d0de6c]:hover{background:#fff3}.lightbox-enter-active[data-v-12d0de6c]{transition:opacity .3s ease}.lightbox-enter-active .lightbox-image[data-v-12d0de6c]{animation:lbScaleIn-12d0de6c .35s cubic-bezier(.16,1,.3,1) both}.lightbox-leave-active[data-v-12d0de6c]{transition:opacity .2s ease}.lightbox-enter-from[data-v-12d0de6c],.lightbox-leave-to[data-v-12d0de6c]{opacity:0}@keyframes lbScaleIn-12d0de6c{0%{transform:scale(.9);opacity:0}to{transform:scale(1);opacity:1}}.app-layout[data-v-0c8236db]{display:flex;flex-direction:column;height:100vh;overflow:hidden;background:var(--bg-deepest)}.main-header[data-v-0c8236db]{display:flex;align-items:center;padding:10px 20px;border-bottom:1px solid var(--border);background:#0e0e0ed9;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);z-index:10;gap:12px;flex-shrink:0}.logo[data-v-0c8236db]{font-family:var(--font-display);font-size:1.15rem;font-weight:600;letter-spacing:-.02em;color:var(--text-primary)}.logo-accent[data-v-0c8236db]{color:var(--accent)}.header-spacer[data-v-0c8236db]{flex:1}.user-btn[data-v-0c8236db]{display:flex;align-items:center;gap:6px;padding:5px 12px;border-radius:var(--radius-sm);color:var(--text-secondary);font-size:.75rem;transition:all var(--transition-fast)}.user-btn[data-v-0c8236db]:hover{background:var(--bg-hover);color:var(--text-primary)}.lang-toggle[data-v-0c8236db]{padding:5px 10px;border-radius:var(--radius-sm);color:var(--text-secondary);font-size:.75rem;font-weight:500;transition:all var(--transition-fast)}.lang-toggle[data-v-0c8236db]:hover{background:var(--bg-hover);color:var(--text-primary)}.welcome-view[data-v-0c8236db]{flex:1;display:flex;align-items:center;justify-content:center;overflow-y:auto}.welcome-inner[data-v-0c8236db]{display:flex;flex-direction:column;align-items:center;text-align:center;padding:40px 20px;max-width:640px;width:100%;animation:fadeIn .5s ease}.welcome-icon[data-v-0c8236db]{color:var(--accent);opacity:.5;margin-bottom:20px}.welcome-title[data-v-0c8236db]{font-family:var(--font-display);font-size:2rem;font-weight:600;color:var(--text-primary);margin-bottom:8px;letter-spacing:-.02em}.welcome-title em[data-v-0c8236db]{font-style:italic;color:var(--accent)}.welcome-sub[data-v-0c8236db]{color:var(--text-secondary);font-size:.9375rem;margin-bottom:28px}.suggestions[data-v-0c8236db]{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;max-width:580px;margin-top:16px}.suggestion-chip[data-v-0c8236db]{padding:7px 14px;border-radius:20px;background:var(--bg-raised);border:1px solid var(--border);color:var(--text-secondary);font-size:.75rem;transition:all var(--transition-fast)}.suggestion-chip[data-v-0c8236db]:hover{background:var(--bg-hover);color:var(--text-primary);border-color:var(--border-active)}.history-area[data-v-0c8236db]{flex:1;overflow-y:auto;overflow-x:hidden;padding:0 0 8px}.load-more[data-v-0c8236db]{text-align:center;padding:12px;color:var(--text-muted);font-size:.75rem}.load-more--end[data-v-0c8236db]{padding:8px}.mini-spinner-lg[data-v-0c8236db]{width:20px;height:20px;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite;margin:0 auto}.history-item[data-v-0c8236db]{max-width:820px;margin:0 auto;padding:16px 24px 8px;animation:slideUp .3s ease both}.history-item--active[data-v-0c8236db]{animation:fadeIn .3s ease}.history-prompt[data-v-0c8236db]{display:flex;align-items:center;gap:8px;margin-bottom:6px}.history-text[data-v-0c8236db]{font-size:.875rem;color:var(--text-primary);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500}.history-time[data-v-0c8236db]{font-size:.6875rem;color:var(--text-muted);flex-shrink:0}.history-status[data-v-0c8236db]{font-size:.6875rem;color:var(--accent);flex-shrink:0}.history-meta[data-v-0c8236db]{display:flex;gap:6px;padding-left:0;margin-bottom:10px}.meta-tag[data-v-0c8236db]{font-size:.625rem;padding:2px 8px;border-radius:10px;background:var(--bg-elevated);color:var(--text-muted);border:1px solid var(--border);position:relative}.meta-tag[data-tip][data-v-0c8236db]:hover:after{content:attr(data-tip);position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);padding:3px 8px;border-radius:4px;background:#1a1a1a;color:#ffffffd9;font-size:.625rem;white-space:nowrap;border:1px solid rgba(255,255,255,.12);z-index:10;pointer-events:none}.meta-tag--ref[data-v-0c8236db]{color:var(--accent);border-color:var(--accent-dim);background:var(--accent-dim)}.history-images[data-v-0c8236db]{padding-left:0}.image-grid[data-v-0c8236db]{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px}.image-grid--single[data-v-0c8236db]{grid-template-columns:1fr;max-width:480px}.generating-placeholder[data-v-0c8236db]{display:flex;align-items:center;gap:10px;color:var(--text-secondary);font-size:.8125rem;padding:20px;background:var(--bg-raised);border-radius:var(--radius-md);border:1px solid var(--border)}.loading-spinner[data-v-0c8236db]{width:18px;height:18px;border:2px solid var(--accent-dim);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}.job-error[data-v-0c8236db]{padding:12px 16px;background:#dc3c3c14;border:1px solid rgba(220,60,60,.2);border-radius:var(--radius-md);color:#e88;font-size:.8125rem;line-height:1.5}@media(max-width:640px){.history-item[data-v-0c8236db]{padding-left:12px;padding-right:12px}.history-images[data-v-0c8236db]{padding-left:0}.image-grid[data-v-0c8236db]{grid-template-columns:1fr}.welcome-title[data-v-0c8236db]{font-size:1.5rem}.suggestions[data-v-0c8236db]{flex-direction:column;align-items:stretch}}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}:root{--bg-deepest: #080808;--bg-deep: #0e0e0e;--bg-base: #131313;--bg-raised: #1a1a1a;--bg-elevated: #222222;--bg-hover: #2a2a2a;--text-primary: #f0ece4;--text-secondary: #8a8577;--text-muted: #5a5650;--accent: #c9a84c;--accent-dim: rgba(201, 168, 76, .15);--accent-glow: rgba(201, 168, 76, .3);--border: rgba(255, 255, 255, .06);--border-active: rgba(255, 255, 255, .12);--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--radius-xl: 24px;--shadow-card: 0 2px 8px rgba(0, 0, 0, .4), 0 0 1px rgba(255, 255, 255, .05);--shadow-elevated: 0 8px 32px rgba(0, 0, 0, .6), 0 0 1px rgba(255, 255, 255, .08);--shadow-glow: 0 0 40px rgba(201, 168, 76, .15);--font-body: "DM Sans", sans-serif;--font-display: "Playfair Display", serif;--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-base: .25s cubic-bezier(.4, 0, .2, 1);--transition-slow: .4s cubic-bezier(.16, 1, .3, 1)}html,body{height:100%;overflow:hidden}body{font-family:var(--font-body);background:var(--bg-deepest);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--bg-elevated);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--bg-hover)}::selection{background:var(--accent-dim);color:var(--accent)}button{font-family:var(--font-body);cursor:pointer;border:none;outline:none;background:none;color:inherit}input,textarea,select{font-family:var(--font-body);color:var(--text-primary);outline:none}a{color:var(--accent);text-decoration:none}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse-ring{0%{transform:scale(.8);opacity:1}to{transform:scale(2);opacity:0}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes spin{to{transform:rotate(360deg)}}
