.picup-sidebar[data-v-c503c873]{position:fixed;bottom:20px;right:0;z-index:500;display:flex;align-items:flex-end;pointer-events:none}.picup-sidebar[data-v-c503c873]>*{pointer-events:auto}.toggle[data-v-c503c873]{background:var(--bg-elevated);border:1px solid var(--border);border-right:none;border-radius:var(--radius-md) 0 0 var(--radius-md);color:var(--text-secondary);padding:10px;cursor:pointer;position:relative;transition:all var(--transition-fast)}.toggle[data-v-c503c873]:hover{color:var(--accent)}.badge[data-v-c503c873]{position:absolute;top:-4px;right:-4px;background:var(--accent);color:#fff;font-size:10px;padding:1px 5px;border-radius:8px;min-width:14px;text-align:center;font-weight:700}.panel[data-v-c503c873]{width:300px;max-height:70vh;background:var(--bg-elevated);border:1px solid var(--border);border-right:none;border-radius:var(--radius-md) 0 0 var(--radius-md);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;overflow:hidden}.panel-header[data-v-c503c873]{padding:10px 12px;border-bottom:1px solid var(--border-light);display:flex;justify-content:space-between;align-items:center;font-size:12px;font-weight:700;color:var(--accent);text-transform:uppercase;letter-spacing:.5px;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background var(--transition-fast)}.panel-header[data-v-c503c873]:hover{background:var(--bg-tertiary)}.muted[data-v-c503c873]{color:var(--text-muted);font-weight:500;text-transform:none;letter-spacing:0}.empty[data-v-c503c873]{padding:20px;text-align:center;color:var(--text-muted);font-size:12px}.job-list[data-v-c503c873]{list-style:none;margin:0;padding:0;overflow-y:auto;flex:1}.job-row[data-v-c503c873]{display:grid;grid-template-columns:36px 1fr auto;gap:8px;align-items:center;padding:8px 10px;border-bottom:1px solid var(--border-light);font-size:11px}.job-row.failed[data-v-c503c873]{background:#dc26260f}.job-row.done[data-v-c503c873]{background:#16a34a0a}.thumb[data-v-c503c873]{width:36px;height:36px;object-fit:cover;border-radius:var(--radius-sm)}.thumb-empty[data-v-c503c873]{background:var(--bg-tertiary)}.meta[data-v-c503c873]{min-width:0}.filename[data-v-c503c873]{color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:11px}.tags[data-v-c503c873]{display:flex;gap:6px;align-items:center;margin-top:2px}.tag-op[data-v-c503c873]{color:var(--accent);font-weight:700;font-size:10px}.tag-bg[data-v-c503c873]{width:10px;height:10px;border:1px solid var(--border);border-radius:50%}.tag-bg.bg-transparent[data-v-c503c873]{background:repeating-linear-gradient(45deg,#aaa 0,#aaa 4px,#555 4px,#555 8px)}.tag-bg.bg-white[data-v-c503c873]{background:#fff}.tag-bg.bg-black[data-v-c503c873]{background:#000}.tag-status[data-v-c503c873]{color:var(--text-muted);font-size:10px;text-transform:uppercase;letter-spacing:.5px}.job-row.pending .tag-status[data-v-c503c873],.job-row.running .tag-status[data-v-c503c873]{color:var(--color-warning)}.job-row.done .tag-status[data-v-c503c873]{color:var(--color-success)}.job-row.failed .tag-status[data-v-c503c873]{color:var(--color-danger)}.error[data-v-c503c873]{color:var(--color-danger);font-size:10px;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.actions[data-v-c503c873]{display:flex;gap:4px}.actions button[data-v-c503c873]{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:8px;border-radius:var(--radius-sm);transition:all var(--transition-fast);display:inline-flex;align-items:center;justify-content:center;min-width:30px;min-height:30px}.actions button[data-v-c503c873]:hover{color:var(--text-primary);background:var(--bg-tertiary)}.actions button[data-v-c503c873]:active{transform:scale(.92)}.expand-caret[data-v-c503c873]{cursor:pointer;padding:4px 6px;font-size:14px}.batch-row[data-v-c503c873]{cursor:pointer}.batch-row[data-v-c503c873]:hover{background:var(--bg-tertiary)}.batch-thumb[data-v-c503c873]{background:var(--bg-tertiary);display:flex;align-items:center;justify-content:center;color:var(--accent)}.batch-children[data-v-c503c873]{list-style:none;margin:0;padding:0;background:var(--bg-primary)}.batch-children .job-row[data-v-c503c873]{padding-left:22px;font-size:10px;border-bottom:1px solid var(--border-light)}.expand-caret[data-v-c503c873]{color:var(--text-muted);font-size:10px;padding:0 4px}.tag-status.error[data-v-c503c873]{color:var(--color-danger);font-weight:700}.batch-group.ready[data-v-c503c873]{background:#16a34a0a}.batch-group.failed[data-v-c503c873]{background:#dc26260f}:root{--bg-primary: #1C1917;--bg-secondary: #292524;--bg-tertiary: #44403C;--bg-elevated: #1C1917;--accent: #D97706;--accent-light: #FEF3C7;--accent-hover: #B45309;--accent-muted: rgba(217, 119, 6, .15);--text-primary: #FAFAF9;--text-secondary: #A8A29E;--text-muted: #78716C;--border: #44403C;--border-light: #3A3632;--color-success: #16A34A;--color-warning: #D97706;--color-danger: #DC2626;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--radius-xl: 20px;--shadow-sm: 0 1px 3px rgba(0,0,0,.3);--shadow-md: 0 4px 12px rgba(0,0,0,.4);--shadow-lg: 0 8px 24px rgba(0,0,0,.5);--font-heading: "Playfair Display", Georgia, serif;--font-body: "Karla", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--transition-fast: .15s ease;--transition-normal: .2s ease;--transition-slow: .3s ease}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font-body);background:var(--bg-primary);color:var(--text-primary);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--bg-tertiary);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}::selection{background:var(--accent-muted);color:var(--accent-light)}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}.dashboard[data-v-6d58cc0f]{display:flex;flex-direction:column;height:100vh;overflow:hidden;background:var(--bg-primary)}.dashboard-header[data-v-6d58cc0f]{display:flex;align-items:center;justify-content:space-between;height:56px;padding:0 20px;background:var(--bg-secondary);border-bottom:1px solid var(--border-light);position:sticky;top:0;z-index:40}.header-left[data-v-6d58cc0f]{display:flex;align-items:center;gap:12px;flex-shrink:0}.sidebar-toggle[data-v-6d58cc0f]{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:none;border:none;color:var(--text-secondary);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast)}.sidebar-toggle[data-v-6d58cc0f]:hover{background:var(--bg-tertiary);color:var(--text-primary)}.logo[data-v-6d58cc0f]{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--text-primary)}.logo-icon[data-v-6d58cc0f]{color:var(--accent)}.logo-text[data-v-6d58cc0f]{font-family:var(--font-heading);font-size:20px;font-weight:600;letter-spacing:-.5px}.logo-accent[data-v-6d58cc0f]{color:var(--accent)}.header-nav[data-v-6d58cc0f]{display:flex;gap:4px}.header-nav-link[data-v-6d58cc0f]{display:flex;align-items:center;gap:7px;padding:8px 14px;color:var(--text-secondary);text-decoration:none;font-size:14px;font-weight:500;border-radius:var(--radius-md);transition:all var(--transition-fast);cursor:pointer;white-space:nowrap}.header-nav-link[data-v-6d58cc0f]:hover{background:var(--bg-tertiary);color:var(--text-primary)}.header-nav-link.active[data-v-6d58cc0f]{background:var(--accent-muted);color:var(--accent)}.nav-dropdown[data-v-6d58cc0f]{position:relative}.nav-dropdown .header-nav-link[data-v-6d58cc0f]{display:flex;align-items:center;gap:7px;padding:8px 14px;color:var(--text-secondary);text-decoration:none;font-size:14px;font-weight:500;border-radius:var(--radius-md);transition:all var(--transition-fast);cursor:pointer;white-space:nowrap;background:none;border:none;font-family:inherit}.nav-dropdown .header-nav-link[data-v-6d58cc0f]:hover{background:var(--bg-tertiary);color:var(--text-primary)}.nav-dropdown .header-nav-link.active[data-v-6d58cc0f]{background:var(--accent-muted);color:var(--accent)}.dropdown-chevron[data-v-6d58cc0f]{transition:transform var(--transition-fast);opacity:.5}.nav-dropdown.open .dropdown-chevron[data-v-6d58cc0f]{transform:rotate(180deg)}.dropdown-menu[data-v-6d58cc0f]{display:none;position:absolute;top:100%;left:0;margin-top:4px;background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);min-width:180px;padding:4px;z-index:50}.nav-dropdown.open .dropdown-menu[data-v-6d58cc0f]{display:block}.dropdown-item[data-v-6d58cc0f]{display:flex;align-items:center;gap:8px;padding:8px 12px;color:var(--text-secondary);text-decoration:none;font-size:13px;border-radius:var(--radius-sm);transition:all var(--transition-fast);white-space:nowrap}.dropdown-item[data-v-6d58cc0f]:hover{background:var(--bg-tertiary);color:var(--text-primary)}.dropdown-item.active[data-v-6d58cc0f]{color:var(--accent);font-weight:600}.trash-badge[data-v-6d58cc0f]{background:#ef4444;color:#fff;font-size:10px;font-weight:600;padding:1px 6px;border-radius:8px;margin-left:auto}.sidebar-overlay[data-v-6d58cc0f],.detail-overlay[data-v-6d58cc0f]{display:none}.dashboard-body[data-v-6d58cc0f]{display:flex;flex:1;min-height:0}.dashboard-sidebar[data-v-6d58cc0f]{width:260px;background:var(--bg-secondary);border-right:1px solid var(--border-light);overflow-y:auto;height:calc(100vh - 56px);position:sticky;top:56px;flex-shrink:0;transition:margin-left var(--transition-slow)}.dashboard-sidebar[data-v-6d58cc0f]:not(.open){margin-left:-260px}.dashboard-main[data-v-6d58cc0f]{flex:1;padding:0;overflow:hidden;min-width:0;display:flex;flex-direction:column}.dashboard-detail[data-v-6d58cc0f]{width:360px;background:var(--bg-secondary);border-left:1px solid var(--border-light);overflow-y:auto;height:calc(100vh - 56px);position:sticky;top:56px;flex-shrink:0}@media (max-width: 1024px){.dashboard-detail[data-v-6d58cc0f]{width:300px}}@media (max-width: 768px){.dashboard-header[data-v-6d58cc0f]{padding:0 12px}.logo-text[data-v-6d58cc0f]{font-size:17px}.nav-label[data-v-6d58cc0f]{display:none}.header-nav-link[data-v-6d58cc0f]{padding:8px 10px;gap:0}.sidebar-overlay[data-v-6d58cc0f],.detail-overlay[data-v-6d58cc0f]{display:block;position:fixed;top:56px;left:0;right:0;bottom:0;background:#0009;z-index:29}.dashboard-sidebar[data-v-6d58cc0f]{position:fixed;top:56px;left:0;bottom:0;width:280px;height:auto;z-index:30;box-shadow:var(--shadow-lg);margin-left:0;transform:translate(-100%);transition:transform var(--transition-slow)}.dashboard-sidebar.open[data-v-6d58cc0f]{transform:translate(0);margin-left:0}.dashboard-main[data-v-6d58cc0f]{width:100%}.dashboard-detail[data-v-6d58cc0f]{position:fixed;top:56px;left:0;right:0;bottom:0;width:100%;height:auto;z-index:30;box-shadow:none}}@media (max-width: 480px){.logo-text[data-v-6d58cc0f]{display:none}.dashboard-main[data-v-6d58cc0f]{padding:12px}}.loading-placeholder[data-v-c2b5c94f]{flex:1;min-height:240px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:var(--text-muted);font-family:var(--font-body);font-size:13px;font-weight:500}.loading-label[data-v-c2b5c94f]{letter-spacing:.3px}.spin-icon[data-v-c2b5c94f]{color:var(--accent);animation:lp-spin-c2b5c94f 1.2s linear infinite}@keyframes lp-spin-c2b5c94f{to{transform:rotate(360deg)}}.sidebar-content[data-v-0d44723d]{padding:16px}.sidebar-section[data-v-0d44723d]{margin-bottom:8px}.sidebar-header[data-v-0d44723d]{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;padding:0 4px}.sidebar-title[data-v-0d44723d]{font-family:var(--font-heading);font-size:14px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.8px}.sidebar-count[data-v-0d44723d]{background:var(--bg-tertiary);color:var(--text-muted);font-size:11px;font-weight:600;padding:2px 8px;border-radius:10px}.section-divider[data-v-0d44723d]{height:1px;background:#ffffff14;margin:16px 4px}.category-tree[data-v-0d44723d]{list-style:none;padding:0;margin:0}.category-tree ul[data-v-0d44723d]{list-style:none;padding:0}.show-all[data-v-0d44723d]{font-weight:500;color:var(--text-secondary);margin-bottom:4px;border-bottom:1px solid rgba(255,255,255,.06);border-radius:var(--radius-sm) var(--radius-sm) 0 0;padding-bottom:10px}.show-all.selected[data-v-0d44723d]{color:var(--accent)}.root-item+.root-item[data-v-0d44723d]{border-top:1px solid rgba(255,255,255,.06);margin-top:2px;padding-top:2px}.subtree-1[data-v-0d44723d]{padding-left:10px;border-left:2px solid rgba(255,255,255,.06);margin-left:14px}.subtree-2[data-v-0d44723d]{padding-left:8px;border-left:2px solid rgba(255,255,255,.04);margin-left:12px}.tree-node[data-v-0d44723d]{display:flex;align-items:center;gap:6px;width:100%;padding:7px 10px;background:none;border:none;color:var(--text-secondary);font-family:var(--font-body);font-size:13px;text-align:left;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast)}.tree-node[data-v-0d44723d]:hover{background:var(--bg-tertiary);color:var(--text-primary)}.tree-node.selected[data-v-0d44723d]{background:var(--accent-muted);color:var(--accent);font-weight:600}.tree-node.level-0[data-v-0d44723d]{font-size:13.5px;font-weight:600;color:var(--text-primary);padding:8px 10px}.tree-node.level-1[data-v-0d44723d]{font-size:12px;font-weight:400;color:var(--text-muted);padding:4px 8px}.tree-node.level-1[data-v-0d44723d]:hover{color:var(--text-primary)}.tree-node.level-2[data-v-0d44723d]{font-size:11px;font-weight:400;color:var(--text-muted);padding:3px 8px}.tree-node.level-2[data-v-0d44723d]:hover{color:var(--text-primary)}.tree-chevron[data-v-0d44723d]{flex-shrink:0;transition:transform var(--transition-fast);color:var(--text-muted)}.tree-chevron.expanded[data-v-0d44723d]{transform:rotate(90deg)}.node-label[data-v-0d44723d]{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.node-zh[data-v-0d44723d]{color:var(--text-muted);font-size:11px;flex-shrink:0}.node-count[data-v-0d44723d]{color:var(--text-muted);font-size:10px;font-weight:500;opacity:.5;flex-shrink:0;min-width:14px;text-align:right}.tree-node.selected .node-count[data-v-0d44723d],.cuisine-item.selected .node-count[data-v-0d44723d]{color:var(--accent);opacity:.7}.node-dot[data-v-0d44723d]{width:5px;height:5px;border-radius:50%;background:var(--text-muted);flex-shrink:0;opacity:.5}.tree-node.selected .node-dot[data-v-0d44723d]{background:var(--accent);opacity:1}.cuisine-list[data-v-0d44723d]{list-style:none;padding:0;margin:0}.cuisine-item[data-v-0d44723d]{display:flex;align-items:center;gap:8px;width:100%;padding:6px 10px;background:none;border:none;color:var(--text-secondary);font-family:var(--font-body);font-size:13px;text-align:left;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast)}.cuisine-item[data-v-0d44723d]:hover{background:var(--bg-tertiary);color:var(--text-primary)}.cuisine-item.selected[data-v-0d44723d]{color:var(--accent);font-weight:600}.cuisine-children[data-v-0d44723d]{list-style:none;padding:0 0 4px 18px;border-left:2px solid rgba(255,255,255,.06);margin:0 0 0 14px}.cuisine-child[data-v-0d44723d]{font-size:12px;color:var(--text-muted);padding:4px 10px}.cuisine-child[data-v-0d44723d]:hover{color:var(--text-primary)}.cuisine-parent .tree-chevron[data-v-0d44723d]{flex-shrink:0;color:var(--text-muted);transition:transform var(--transition-fast)}.cuisine-parent .tree-chevron.expanded[data-v-0d44723d]{transform:rotate(90deg)}.cuisine-radio[data-v-0d44723d]{width:14px;height:14px;border-radius:50%;border:2px solid var(--text-muted);flex-shrink:0;position:relative;transition:all var(--transition-fast)}.cuisine-radio.active[data-v-0d44723d]{border-color:var(--accent)}.cuisine-radio.active[data-v-0d44723d]:after{content:"";position:absolute;top:2px;left:2px;width:6px;height:6px;border-radius:50%;background:var(--accent)}.empty-state[data-v-0d44723d]{display:flex;flex-direction:column;align-items:center;gap:8px;padding:32px 16px;color:var(--text-muted);font-size:13px}.empty-icon[data-v-0d44723d]{opacity:.4}.search-bar[data-v-44462b88]{display:flex;gap:10px;align-items:center;margin-bottom:20px}.search-input-wrap[data-v-44462b88]{flex:1;display:flex;align-items:center;background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-xl);padding:10px 16px;gap:10px;transition:all var(--transition-fast)}.search-input-wrap.focused[data-v-44462b88]{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-muted)}.search-icon[data-v-44462b88]{color:var(--text-muted);flex-shrink:0}.search-input-wrap input[data-v-44462b88]{flex:1;background:none;border:none;color:var(--text-primary);font-family:var(--font-body);font-size:14px;outline:none}.search-input-wrap input[data-v-44462b88]::placeholder{color:var(--text-muted)}.clear-btn[data-v-44462b88]{display:flex;align-items:center;justify-content:center;width:24px;height:24px;background:var(--bg-tertiary);border:none;border-radius:50%;color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast)}.clear-btn[data-v-44462b88]:hover{background:var(--text-muted);color:var(--bg-primary)}.upload-btn[data-v-44462b88]{display:flex;align-items:center;gap:7px;background:var(--accent);color:#fff;border:none;padding:10px 18px;border-radius:var(--radius-md);cursor:pointer;font-family:var(--font-body);font-size:13px;font-weight:600;white-space:nowrap;transition:all var(--transition-fast)}.upload-btn[data-v-44462b88]:hover{background:var(--accent-hover)}.modal-overlay[data-v-44462b88]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal[data-v-44462b88]{background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-lg, 12px);padding:24px;width:420px;max-width:90vw;box-shadow:0 20px 60px #0006}.modal h3[data-v-44462b88]{font-family:var(--font-heading);font-size:16px;font-weight:600;margin:0 0 14px;color:var(--text-primary)}.modal-desc-input[data-v-44462b88]{width:100%;padding:9px 12px;font-family:var(--font-body);font-size:13px;color:var(--text-primary);background:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-md, 8px);outline:none;transition:border-color var(--transition-fast);box-sizing:border-box}.modal-desc-input[data-v-44462b88]::placeholder{color:var(--text-muted)}.modal-desc-input[data-v-44462b88]:focus{border-color:var(--accent)}.modal-actions[data-v-44462b88]{display:flex;justify-content:flex-end;gap:10px;margin-top:16px}.modal-actions .btn[data-v-44462b88]{font-family:var(--font-body);font-size:13px;font-weight:500;padding:9px 18px;border-radius:var(--radius-md, 8px);cursor:pointer;transition:all var(--transition-fast, .15s);border:1px solid transparent}.modal-actions .btn-ghost[data-v-44462b88]{background:transparent;color:var(--text-secondary);border-color:var(--border)}.modal-actions .btn-ghost[data-v-44462b88]:hover{background:var(--bg-tertiary);color:var(--text-primary)}.modal-actions .btn-primary[data-v-44462b88]{background:var(--accent);color:#fff;border-color:var(--accent)}.modal-actions .btn-primary[data-v-44462b88]:hover{filter:brightness(1.1)}@media (max-width: 480px){.search-bar[data-v-44462b88]{flex-wrap:wrap}.search-input-wrap[data-v-44462b88]{flex:1 1 100%}.upload-btn[data-v-44462b88]{flex:1;justify-content:center}}.drp[data-v-32730e84]{position:relative}.drp-trigger[data-v-32730e84]{display:flex;align-items:center;gap:6px;background:var(--bg-secondary);border:1px solid var(--border);color:var(--text-secondary);padding:6px 12px;border-radius:var(--radius-sm);font-family:var(--font-body);font-size:12px;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.drp-trigger[data-v-32730e84]:hover{border-color:var(--text-muted);color:var(--text-primary)}.drp-trigger.active[data-v-32730e84]{border-color:var(--accent);color:var(--accent);background:var(--accent-muted)}.drp-trigger.open[data-v-32730e84]{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-muted)}.drp-label[data-v-32730e84]{max-width:160px;overflow:hidden;text-overflow:ellipsis}.drp-clear[data-v-32730e84]{border-radius:50%;padding:1px;transition:color var(--transition-fast)}.drp-clear[data-v-32730e84]:hover{color:var(--text-primary)}.drp-panel[data-v-32730e84]{position:absolute;top:calc(100% + 6px);left:0;background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:0 12px 40px #00000080;z-index:60;width:300px;overflow:hidden}.drp-presets[data-v-32730e84]{display:flex;flex-wrap:wrap;gap:6px;padding:12px 14px}.drp-preset[data-v-32730e84]{background:var(--bg-tertiary);border:1px solid transparent;color:var(--text-secondary);padding:4px 10px;border-radius:20px;font-family:var(--font-body);font-size:11px;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.drp-preset[data-v-32730e84]:hover{color:var(--text-primary);border-color:var(--border)}.drp-preset.active[data-v-32730e84]{background:var(--accent-muted);color:var(--accent);border-color:var(--accent)}.drp-divider[data-v-32730e84]{height:1px;background:var(--border-light)}.drp-calendar[data-v-32730e84]{padding:10px 14px}.drp-cal-header[data-v-32730e84]{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.drp-month-label[data-v-32730e84]{font-size:13px;font-weight:600;color:var(--text-primary)}.drp-nav[data-v-32730e84]{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:none;border:1px solid var(--border-light);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast)}.drp-nav[data-v-32730e84]:hover{background:var(--bg-tertiary);color:var(--text-primary);border-color:var(--border)}.drp-weekdays[data-v-32730e84]{display:grid;grid-template-columns:repeat(7,1fr);text-align:center;margin-bottom:4px}.drp-weekdays span[data-v-32730e84]{font-size:10px;font-weight:600;color:var(--text-muted);padding:4px 0;text-transform:uppercase;letter-spacing:.5px}.drp-days[data-v-32730e84]{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.drp-day[data-v-32730e84]{display:flex;align-items:center;justify-content:center;width:100%;aspect-ratio:1;background:none;border:none;border-radius:var(--radius-sm);color:var(--text-secondary);font-family:var(--font-body);font-size:12px;cursor:pointer;transition:all var(--transition-fast);position:relative}.drp-day[data-v-32730e84]:hover:not(:disabled):not(.other-month){background:var(--bg-tertiary);color:var(--text-primary)}.drp-day.other-month[data-v-32730e84]{color:var(--border);cursor:default}.drp-day.today[data-v-32730e84]{font-weight:700;color:var(--accent)}.drp-day.in-range[data-v-32730e84]{background:var(--accent-muted);border-radius:0}.drp-day.sel-start[data-v-32730e84]{background:var(--accent);color:#fff;border-radius:var(--radius-sm) 0 0 var(--radius-sm);font-weight:600}.drp-day.sel-end[data-v-32730e84]{background:var(--accent);color:#fff;border-radius:0 var(--radius-sm) var(--radius-sm) 0;font-weight:600}.drp-day.sel-start.sel-end[data-v-32730e84]{border-radius:var(--radius-sm)}.drp-footer[data-v-32730e84]{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-top:1px solid var(--border-light)}.drp-range-display[data-v-32730e84]{font-size:11px;color:var(--text-muted)}.drp-apply[data-v-32730e84]{background:var(--accent);border:none;color:#fff;padding:5px 16px;border-radius:var(--radius-sm);font-family:var(--font-body);font-size:12px;font-weight:600;cursor:pointer;transition:background var(--transition-fast)}.drp-apply[data-v-32730e84]:hover{background:var(--accent-hover)}.drp-apply[data-v-32730e84]:disabled{opacity:.4;cursor:not-allowed}.dropdown-enter-active[data-v-32730e84],.dropdown-leave-active[data-v-32730e84]{transition:all .15s ease}.dropdown-enter-from[data-v-32730e84],.dropdown-leave-to[data-v-32730e84]{opacity:0;transform:translateY(-4px)}@media (max-width: 480px){.drp-panel[data-v-32730e84]{position:fixed;left:12px;right:12px;top:auto;bottom:12px;width:auto}}.filter-bar[data-v-9722b71c]{display:flex;align-items:center;gap:8px;margin-bottom:16px;flex-wrap:wrap}.filter-icon[data-v-9722b71c]{color:var(--text-muted);flex-shrink:0}.filter-select[data-v-9722b71c],.filter-btn[data-v-9722b71c]{background:var(--bg-secondary);border:1px solid var(--border);color:var(--text-secondary);padding:6px 12px;border-radius:var(--radius-sm);font-family:var(--font-body);font-size:12px;outline:none;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.filter-select[data-v-9722b71c]{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-right:26px;background-image:url("data:image/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L5 5L9 1' stroke='%23888' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center}.filter-select[data-v-9722b71c]:hover,.filter-btn[data-v-9722b71c]:hover{border-color:var(--text-muted);color:var(--text-primary)}.filter-select[data-v-9722b71c]:focus,.filter-btn[data-v-9722b71c]:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-muted)}.filter-btn.active[data-v-9722b71c]{border-color:var(--accent);color:var(--accent);background:var(--accent-muted)}.filter-btn[data-v-9722b71c]{display:flex;align-items:center;gap:6px}.filter-dropdown[data-v-9722b71c]{position:relative}.dropdown-panel[data-v-9722b71c]{position:absolute;top:calc(100% + 4px);left:0;background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg, 0 8px 24px rgba(0,0,0,.3));z-index:50;min-width:220px;max-height:280px;display:flex;flex-direction:column}.dropdown-search[data-v-9722b71c]{background:var(--bg-primary);border:none;border-bottom:1px solid var(--border);color:var(--text-primary);padding:8px 12px;font-family:var(--font-body);font-size:12px;outline:none;border-radius:var(--radius-md) var(--radius-md) 0 0}.dropdown-search[data-v-9722b71c]::placeholder{color:var(--text-muted)}.dropdown-list[data-v-9722b71c]{overflow-y:auto;padding:4px}.dropdown-item[data-v-9722b71c]{display:flex;align-items:center;gap:8px;padding:5px 8px;border-radius:var(--radius-sm);cursor:pointer;font-size:12px;transition:background var(--transition-fast)}.dropdown-item[data-v-9722b71c]:hover{background:var(--bg-tertiary)}.dropdown-item input[type=checkbox][data-v-9722b71c]{accent-color:var(--accent);flex-shrink:0}.tag-name[data-v-9722b71c]{color:var(--text-primary)}.tag-zh[data-v-9722b71c]{color:var(--text-muted);font-size:11px}.dropdown-empty[data-v-9722b71c]{padding:12px;color:var(--text-muted);font-size:12px;text-align:center}.selected-tags-divider[data-v-9722b71c]{width:1px;height:18px;background:var(--border);margin:0 2px}.selected-tag-chip[data-v-9722b71c]{display:inline-flex;align-items:center;gap:6px;background:var(--accent-muted);border:1px solid var(--accent);color:var(--accent);padding:4px 4px 4px 10px;border-radius:var(--radius-sm);font-size:12px;white-space:nowrap}.chip-remove[data-v-9722b71c]{display:flex;align-items:center;justify-content:center;width:16px;height:16px;background:none;border:none;color:var(--accent);cursor:pointer;border-radius:50%;padding:0;transition:background var(--transition-fast)}.chip-remove[data-v-9722b71c]:hover{background:#ffffff1f}.clear-tags-btn[data-v-9722b71c]{background:none;border:1px dashed var(--border);color:var(--text-muted);padding:5px 10px;border-radius:var(--radius-sm);font-family:var(--font-body);font-size:11px;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.clear-tags-btn[data-v-9722b71c]:hover{border-color:var(--color-danger, #dc2626);border-style:solid;color:var(--color-danger, #dc2626);background:#dc262614}.image-grid[data-v-8d74803e]{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px}.grid-card[data-v-8d74803e]{background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-lg);overflow:hidden;cursor:pointer;transition:all var(--transition-normal);position:relative}.grid-card[data-v-8d74803e]:hover{transform:translateY(-3px);box-shadow:var(--shadow-md);border-color:var(--border)}.grid-card.selected[data-v-8d74803e],.grid-card.checked[data-v-8d74803e]{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-muted)}.card-thumb[data-v-8d74803e]{position:relative;overflow:hidden}.card-thumb img[data-v-8d74803e]{width:100%;height:170px;object-fit:cover;transition:transform var(--transition-slow)}.grid-card:hover .card-thumb img[data-v-8d74803e]{transform:scale(1.04)}.dedup-badge[data-v-8d74803e]{position:absolute;top:8px;right:8px;z-index:2;width:24px;height:24px;border-radius:50%;background:var(--color-warning);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer}.check-overlay[data-v-8d74803e]{position:absolute;top:8px;left:8px;z-index:2;opacity:0;transition:opacity var(--transition-fast)}.grid-card:hover .check-overlay[data-v-8d74803e],.check-overlay.visible[data-v-8d74803e]{opacity:1}.check-box[data-v-8d74803e]{display:flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:4px;border:2px solid rgba(255,255,255,.7);background:#0000004d;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);cursor:pointer;transition:all var(--transition-fast)}.check-box[data-v-8d74803e]:hover{border-color:var(--accent);background:#00000080}.check-box.on[data-v-8d74803e]{background:var(--accent);border-color:var(--accent)}.placeholder[data-v-8d74803e]{width:100%;height:170px;display:flex;align-items:center;justify-content:center;background:var(--bg-tertiary);color:var(--text-muted)}.spin-icon[data-v-8d74803e]{animation:spin-8d74803e 1.2s linear infinite}@keyframes spin-8d74803e{to{transform:rotate(360deg)}}.card-info[data-v-8d74803e]{padding:8px 10px;display:flex;flex-direction:column;gap:6px}.info-row[data-v-8d74803e]{display:flex;align-items:center;gap:6px}.filename[data-v-8d74803e]{color:var(--text-primary);font-size:12px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tag-row[data-v-8d74803e]{display:flex;flex-wrap:wrap;gap:4px}.tag-chip[data-v-8d74803e]{background:var(--bg-tertiary);color:var(--text-muted);font-size:10px;padding:1px 6px;border-radius:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:90px}.tag-more[data-v-8d74803e]{color:var(--text-muted);font-size:10px;padding:1px 4px}.desc-line[data-v-8d74803e]{color:var(--text-muted);font-size:10px;line-height:1.4;margin:0;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.status-dot[data-v-8d74803e]{width:7px;height:7px;border-radius:50%;flex-shrink:0}.status-dot.ready[data-v-8d74803e]{background:var(--color-success)}.status-dot.processing[data-v-8d74803e]{background:var(--color-warning)}.status-dot.pending[data-v-8d74803e]{background:var(--text-muted)}.status-dot.failed[data-v-8d74803e]{background:var(--color-danger)}.empty[data-v-8d74803e]{display:flex;flex-direction:column;align-items:center;gap:12px;color:var(--text-muted);text-align:center;padding:60px 20px;grid-column:1 / -1}.empty-icon[data-v-8d74803e]{opacity:.3}.empty p[data-v-8d74803e]{font-size:14px}@media (max-width: 480px){.image-grid[data-v-8d74803e]{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px}.card-thumb img[data-v-8d74803e],.placeholder[data-v-8d74803e]{height:130px}}.detail-panel[data-v-07e23f47]{padding:20px}.detail-filename[data-v-07e23f47]{display:flex;align-items:center;gap:6px;color:var(--text-secondary);font-size:13px;margin-bottom:20px;word-break:break-all;cursor:pointer;padding:4px 8px;margin-left:-8px;margin-right:-8px;border-radius:var(--radius-sm);transition:background var(--transition-fast)}.detail-filename[data-v-07e23f47]:hover{background:var(--bg-tertiary)}.filename-text[data-v-07e23f47]{flex:1;min-width:0}.filename-edit-icon[data-v-07e23f47]{flex-shrink:0;opacity:0;color:var(--text-muted);transition:opacity var(--transition-fast)}.detail-filename:hover .filename-edit-icon[data-v-07e23f47]{opacity:1}.filename-input[data-v-07e23f47]{flex:1;background:var(--bg-primary);border:1px solid var(--accent);color:var(--text-primary);font-family:var(--font-body);font-size:13px;padding:3px 6px;border-radius:var(--radius-sm);outline:none;box-shadow:0 0 0 2px var(--accent-muted)}.section[data-v-07e23f47]{margin-bottom:20px}.section-label[data-v-07e23f47]{display:block;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.8px;color:var(--accent);margin-bottom:8px}.category-display[data-v-07e23f47]{display:flex;flex-direction:column;gap:6px}.cat-line[data-v-07e23f47]{display:flex;align-items:center;gap:6px;font-size:13px}.cat-dim-label[data-v-07e23f47]{color:var(--text-muted);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;min-width:55px}.form-group-mini[data-v-07e23f47]{margin-bottom:8px}.form-label-mini[data-v-07e23f47]{display:block;font-size:10px;font-weight:600;text-transform:uppercase;color:var(--text-muted);margin-bottom:4px}.zh[data-v-07e23f47]{color:var(--text-muted);font-size:11px}.empty-hint[data-v-07e23f47]{color:var(--text-muted);font-size:12px;font-style:italic}.description-text[data-v-07e23f47]{color:var(--text-secondary);font-size:12px;line-height:1.5;margin:0}.reclassify-actions[data-v-07e23f47]{display:flex;gap:12px;margin-bottom:6px}.desc-edit[data-v-07e23f47]{display:flex;flex-direction:column;gap:6px}.desc-textarea[data-v-07e23f47]{resize:vertical;min-height:50px;line-height:1.4}.desc-hint-input[data-v-07e23f47]{font-size:11px;padding:6px 8px;border-color:var(--color-warning)}.desc-hint-input[data-v-07e23f47]::placeholder{color:var(--color-warning);opacity:.6}.desc-edit-actions[data-v-07e23f47]{display:flex;gap:6px}.edit-link[data-v-07e23f47]{display:inline-flex;align-items:center;gap:4px;background:none;border:none;color:var(--text-muted);font-size:11px;cursor:pointer;padding:4px 0;margin-top:4px;transition:color var(--transition-fast)}.edit-link[data-v-07e23f47]:hover{color:var(--accent)}.cat-edit[data-v-07e23f47]{margin-top:8px}.cat-edit-actions[data-v-07e23f47]{display:flex;gap:6px;margin-top:8px}.form-select[data-v-07e23f47]{width:100%;background:var(--bg-primary);border:1px solid var(--border);color:var(--text-primary);padding:8px 10px;border-radius:var(--radius-sm);font-family:var(--font-body);font-size:12px;outline:none;cursor:pointer}.form-select-tree[data-v-07e23f47]{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.form-select[data-v-07e23f47]:focus{border-color:var(--accent)}.form-input[data-v-07e23f47]{width:100%;background:var(--bg-primary);border:1px solid var(--border);color:var(--text-primary);padding:8px 10px;border-radius:var(--radius-sm);font-family:var(--font-body);font-size:12px;outline:none}.form-input[data-v-07e23f47]::placeholder{color:var(--text-muted)}.form-input[data-v-07e23f47]:focus{border-color:var(--accent)}.btn[data-v-07e23f47]{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border:none;border-radius:var(--radius-sm);font-family:var(--font-body);font-size:12px;font-weight:500;cursor:pointer;text-decoration:none;transition:all var(--transition-fast)}.btn-sm[data-v-07e23f47]{padding:5px 12px;font-size:11px}.btn-accent[data-v-07e23f47]{background:var(--accent);color:#fff}.btn-accent[data-v-07e23f47]:hover{background:var(--accent-hover)}.btn-ghost[data-v-07e23f47]{background:var(--bg-tertiary);color:var(--text-secondary)}.btn-ghost[data-v-07e23f47]:hover{color:var(--text-primary)}.btn-secondary[data-v-07e23f47]{background:var(--bg-tertiary);color:var(--text-secondary)}.btn-secondary[data-v-07e23f47]:hover{background:var(--border);color:var(--text-primary)}.btn-danger[data-v-07e23f47]{background:#dc262626;color:var(--color-danger)}.btn-danger[data-v-07e23f47]:hover{background:#dc262640}.tag-display[data-v-07e23f47]{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.tag[data-v-07e23f47]{background:var(--accent-muted);color:var(--accent-light);padding:4px 10px;border-radius:14px;font-size:12px;display:inline-flex;align-items:center;gap:5px}.tag-remove[data-v-07e23f47]{display:flex;align-items:center;background:none;border:none;color:var(--text-muted);cursor:pointer;padding:0;transition:color var(--transition-fast)}.tag-remove[data-v-07e23f47]:hover{color:var(--color-danger)}.tag-input-wrap[data-v-07e23f47]{position:relative}.suggestions[data-v-07e23f47]{position:absolute;top:100%;left:0;right:0;background:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-sm);list-style:none;padding:4px;margin:4px 0 0;z-index:10;max-height:200px;overflow-y:auto;box-shadow:var(--shadow-md)}.suggestions li[data-v-07e23f47]{padding:7px 10px;cursor:pointer;font-size:12px;color:var(--text-secondary);border-radius:4px;transition:all var(--transition-fast)}.suggestions li[data-v-07e23f47]:hover{background:var(--accent-muted);color:var(--accent-light)}.info-grid[data-v-07e23f47]{font-size:12px}.info-row[data-v-07e23f47]{display:flex;justify-content:space-between;padding:5px 0;border-bottom:1px solid var(--border-light)}.info-row[data-v-07e23f47]:last-child{border-bottom:none}.info-key[data-v-07e23f47]{color:var(--text-muted)}.info-val[data-v-07e23f47]{color:var(--text-secondary)}.status-badge[data-v-07e23f47]{text-transform:capitalize;font-size:11px;font-weight:600;padding:2px 8px;border-radius:10px}.status-badge.ready[data-v-07e23f47]{color:var(--color-success);background:#16a34a26}.status-badge.processing[data-v-07e23f47]{color:var(--color-warning);background:#d9770626}.status-badge.pending[data-v-07e23f47]{color:var(--text-muted);background:var(--bg-tertiary)}.status-badge.failed[data-v-07e23f47]{color:var(--color-danger);background:#dc262626}.actions[data-v-07e23f47]{display:flex;flex-direction:column;gap:10px;padding-top:8px;border-top:1px solid var(--border-light)}.actions-downloads[data-v-07e23f47]{display:flex;flex-direction:column;gap:8px}.cutout-group[data-v-07e23f47]{display:flex;gap:4px;align-items:center}.cutout-select[data-v-07e23f47]{padding:6px 8px;font-size:12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-primary);color:var(--text-primary);font-family:var(--font-body);cursor:pointer;outline:none;min-width:0}.cutout-select[data-v-07e23f47]:focus{border-color:var(--accent)}.modal-overlay[data-v-02bbe58e]{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000bf;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:200;display:flex;align-items:center;justify-content:center;padding:32px}.modal-card[data-v-02bbe58e]{position:relative;display:flex;width:min(92vw,1400px);height:min(88vh,900px);background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:0 30px 80px #0000008c;overflow:hidden}.modal-close[data-v-02bbe58e]{position:absolute;top:12px;right:12px;z-index:2;display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:#00000073;border:1px solid rgba(255,255,255,.15);color:#fff;border-radius:50%;cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);transition:all var(--transition-fast)}.modal-close[data-v-02bbe58e]:hover{background:#000000b3;border-color:#ffffff4d}.modal-image[data-v-02bbe58e]{flex:1;min-width:0;display:flex;align-items:center;justify-content:center;background:#0a0a0a;padding:16px}.modal-image img[data-v-02bbe58e]{max-width:100%;max-height:100%;object-fit:contain;border-radius:var(--radius-md)}.modal-side[data-v-02bbe58e]{width:360px;flex-shrink:0;border-left:1px solid var(--border-light);overflow-y:auto}.modal-enter-active[data-v-02bbe58e],.modal-leave-active[data-v-02bbe58e]{transition:opacity .2s ease}.modal-enter-active .modal-card[data-v-02bbe58e],.modal-leave-active .modal-card[data-v-02bbe58e]{transition:transform .2s ease,opacity .2s ease}.modal-enter-from[data-v-02bbe58e],.modal-leave-to[data-v-02bbe58e]{opacity:0}.modal-enter-from .modal-card[data-v-02bbe58e],.modal-leave-to .modal-card[data-v-02bbe58e]{transform:scale(.96);opacity:0}@media (max-width: 900px){.modal-overlay[data-v-02bbe58e]{padding:0}.modal-card[data-v-02bbe58e]{width:100vw;height:100vh;max-width:none;max-height:none;border-radius:0;flex-direction:column}.modal-image[data-v-02bbe58e]{flex:1 1 55%;min-height:0}.modal-side[data-v-02bbe58e]{width:100%;flex:1 1 45%;border-left:none;border-top:1px solid var(--border-light)}}.pagination-bar[data-v-fe9ea4b8]{display:flex;align-items:center;justify-content:center;gap:16px;padding:10px 24px;flex-wrap:wrap;flex-shrink:0;background:var(--bg-primary);border-top:1px solid var(--border-light)}.pagination-info[data-v-fe9ea4b8]{font-size:12px;color:var(--text-muted);white-space:nowrap}.pagination-controls[data-v-fe9ea4b8]{display:flex;align-items:center;gap:4px}.page-btn[data-v-fe9ea4b8]{display:flex;align-items:center;justify-content:center;min-width:32px;height:32px;padding:0 6px;background:none;border:1px solid var(--border-light);border-radius:var(--radius-sm);color:var(--text-secondary);font-family:var(--font-body);font-size:12px;font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.page-btn[data-v-fe9ea4b8]:hover:not(:disabled):not(.active){background:var(--bg-tertiary);border-color:var(--border);color:var(--text-primary)}.page-btn[data-v-fe9ea4b8]:disabled{opacity:.3;cursor:not-allowed}.page-btn.active[data-v-fe9ea4b8]{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}.page-ellipsis[data-v-fe9ea4b8]{display:flex;align-items:center;justify-content:center;min-width:28px;height:32px;color:var(--text-muted);font-size:12px;-webkit-user-select:none;user-select:none}.pagination-size[data-v-fe9ea4b8]{position:relative}.size-select[data-v-fe9ea4b8]{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-sm);color:var(--text-secondary);font-family:var(--font-body);font-size:12px;padding:6px 24px 6px 10px;cursor:pointer;transition:all var(--transition-fast);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2378716C' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center}.size-select[data-v-fe9ea4b8]:hover{border-color:var(--border);color:var(--text-primary)}.size-select[data-v-fe9ea4b8]:focus{outline:none;border-color:var(--accent)}@media (max-width: 480px){.pagination-bar[data-v-fe9ea4b8]{gap:10px}.pagination-info[data-v-fe9ea4b8]{order:2;width:100%;text-align:center}.page-btn[data-v-fe9ea4b8]{min-width:28px;height:28px}}.search-scroll[data-v-919ba39b]{flex:1;overflow-y:auto;min-height:0;padding:24px}.active-filter[data-v-919ba39b]{display:inline-flex;align-items:center;gap:6px;background:var(--accent-muted);border:1px solid var(--accent);border-radius:var(--radius-md);padding:5px 10px 5px 12px;margin-bottom:16px;font-size:12px;color:var(--accent)}.filter-clear[data-v-919ba39b]{display:flex;align-items:center;justify-content:center;width:18px;height:18px;background:none;border:none;color:var(--accent);cursor:pointer;border-radius:50%;transition:background var(--transition-fast)}.filter-clear[data-v-919ba39b]:hover{background:#ffffff1a}.upload-progress[data-v-919ba39b]{display:flex;align-items:center;gap:8px;background:var(--accent-muted);border:1px solid var(--accent);border-radius:var(--radius-md);padding:10px 16px;margin-bottom:16px;font-size:13px;font-weight:500;color:var(--accent)}.loading-sticky[data-v-919ba39b]{position:sticky;top:0;z-index:5;display:flex;align-items:center;justify-content:center;gap:8px;margin:0 -24px 12px;padding:10px 16px;font-size:13px;font-weight:500;color:var(--accent);background:color-mix(in srgb,var(--bg-primary) 85%,transparent);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-bottom:1px solid var(--border-light)}.loading-fade-enter-active[data-v-919ba39b],.loading-fade-leave-active[data-v-919ba39b]{transition:opacity .18s ease,transform .18s ease}.loading-fade-enter-from[data-v-919ba39b],.loading-fade-leave-to[data-v-919ba39b]{opacity:0;transform:translateY(-6px)}.grid-wrapper[data-v-919ba39b]{transition:opacity .18s ease}.grid-wrapper.is-loading[data-v-919ba39b]{opacity:.45;pointer-events:none}.spin-icon[data-v-919ba39b]{animation:spin-919ba39b 1.2s linear infinite}@keyframes spin-919ba39b{to{transform:rotate(360deg)}}.batch-toolbar[data-v-919ba39b]{position:fixed;bottom:24px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:8px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-xl);padding:10px 20px;box-shadow:0 8px 32px #0006;z-index:100;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.batch-count[data-v-919ba39b]{font-size:13px;font-weight:600;color:var(--accent);white-space:nowrap;padding-right:8px;border-right:1px solid var(--border);margin-right:4px}.batch-btn[data-v-919ba39b]{display:flex;align-items:center;gap:5px;background:none;border:1px solid var(--border);color:var(--text-secondary);padding:6px 12px;border-radius:var(--radius-sm);font-family:var(--font-body);font-size:12px;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.batch-btn[data-v-919ba39b]:hover{background:var(--bg-tertiary);color:var(--text-primary);border-color:var(--text-muted)}.batch-btn[data-v-919ba39b]:disabled{opacity:.5;cursor:not-allowed}.batch-download[data-v-919ba39b]:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-muted)}.batch-delete[data-v-919ba39b]:hover{border-color:var(--color-danger, #dc2626);color:var(--color-danger, #dc2626);background:#dc26261a}.batch-cancel[data-v-919ba39b]:hover{border-color:var(--text-muted)}.batch-cutout[data-v-919ba39b]:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-muted)}.toolbar-enter-active[data-v-919ba39b],.toolbar-leave-active[data-v-919ba39b]{transition:all .25s ease}.toolbar-enter-from[data-v-919ba39b],.toolbar-leave-to[data-v-919ba39b]{opacity:0;transform:translate(-50%) translateY(20px)}@media (max-width: 768px){.search-scroll[data-v-919ba39b]{padding:16px}.loading-sticky[data-v-919ba39b]{margin:0 -16px 12px}.batch-toolbar[data-v-919ba39b]{left:12px;right:12px;transform:none;bottom:12px;flex-wrap:wrap;justify-content:center;border-radius:var(--radius-lg)}.toolbar-enter-from[data-v-919ba39b],.toolbar-leave-to[data-v-919ba39b]{transform:translateY(20px)}}.upload-zone[data-v-3d94ef4d]{border:2px dashed var(--border);border-radius:var(--radius-lg);padding:48px 24px;text-align:center;cursor:default;transition:all var(--transition-normal);background:var(--bg-secondary)}.upload-zone.dragover[data-v-3d94ef4d]{border-color:var(--accent);background:var(--accent-muted)}.upload-zone[data-v-3d94ef4d]:hover{border-color:var(--text-muted)}.upload-visual[data-v-3d94ef4d]{display:flex;flex-direction:column;align-items:center;gap:8px}.upload-icon-wrap[data-v-3d94ef4d]{display:flex;align-items:center;justify-content:center;width:72px;height:72px;border-radius:50%;background:var(--accent-muted);color:var(--accent);margin-bottom:8px}.upload-text[data-v-3d94ef4d]{color:var(--text-primary);font-size:16px;font-weight:500}.upload-sub[data-v-3d94ef4d]{color:var(--text-muted);font-size:13px}.upload-actions[data-v-3d94ef4d]{display:flex;gap:10px;justify-content:center;margin-top:20px}.upload-btn[data-v-3d94ef4d]{display:flex;align-items:center;gap:6px;background:var(--bg-primary);color:var(--text-secondary);border:1px solid var(--border);padding:10px 20px;border-radius:var(--radius-md);cursor:pointer;font-family:var(--font-body);font-size:13px;font-weight:500;transition:all var(--transition-fast)}.upload-btn[data-v-3d94ef4d]:hover{background:var(--accent);color:#fff;border-color:var(--accent)}.upload-btn-zip[data-v-3d94ef4d]:hover{background:var(--color-warning);border-color:var(--color-warning)}.description-row[data-v-3d94ef4d]{margin-top:18px;display:flex;justify-content:center}.description-input[data-v-3d94ef4d]{width:100%;max-width:480px;padding:9px 14px;font-family:var(--font-body);font-size:13px;color:var(--text-primary);background:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-md);outline:none;transition:border-color var(--transition-fast)}.description-input[data-v-3d94ef4d]::placeholder{color:var(--text-muted)}.description-input[data-v-3d94ef4d]:focus{border-color:var(--accent)}.upload-hint[data-v-3d94ef4d]{color:var(--text-muted);font-size:11px;margin-top:20px}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-overlay .modal{background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-lg, 12px);padding:28px;width:440px;max-width:90vw;box-shadow:0 20px 60px #0006}.modal-overlay .modal h3{font-family:var(--font-heading);font-size:17px;font-weight:600;margin:0 0 10px;color:var(--text-primary)}.modal-overlay .modal .modal-desc{font-size:13px;color:var(--text-muted);margin:0 0 20px;line-height:1.6}.modal-overlay .modal .modal-desc strong{color:var(--text-primary);font-weight:600}.modal-overlay .modal .modal-desc em{color:var(--text-secondary);font-style:normal}.modal-overlay .modal .modal-actions{display:flex;justify-content:flex-end;gap:10px}.modal-overlay .modal .modal-actions button{font-family:var(--font-body);font-size:13px;font-weight:500;padding:10px 18px;border-radius:var(--radius-md, 8px);cursor:pointer;transition:all var(--transition-fast, .15s);border:1px solid transparent}.modal-overlay .modal .modal-actions .btn-ghost{background:transparent;color:var(--text-secondary);border-color:var(--border)}.modal-overlay .modal .modal-actions .btn-ghost:hover{background:var(--bg-tertiary);color:var(--text-primary)}.modal-overlay .modal .modal-actions .btn-primary{background:var(--accent);color:#fff;border-color:var(--accent)}.modal-overlay .modal .modal-actions .btn-primary:hover{filter:brightness(1.1)}.upload-card[data-v-92ef4476]{background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-md);overflow:hidden;transition:all var(--transition-fast)}.upload-card[data-v-92ef4476]:hover{border-color:var(--border)}.upload-card.ready[data-v-92ef4476]{border-color:#16a34a4d}.upload-card.failed[data-v-92ef4476]{border-color:#dc26264d}.thumb[data-v-92ef4476]{height:130px;overflow:hidden;position:relative}.thumb img[data-v-92ef4476]{width:100%;height:100%;object-fit:cover}.thumb-placeholder[data-v-92ef4476]{display:flex;width:100%;height:100%;align-items:center;justify-content:center;background:var(--bg-tertiary);color:var(--text-muted)}.processing-overlay[data-v-92ef4476]{position:absolute;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;color:var(--accent)}.spin-icon[data-v-92ef4476]{animation:spin-92ef4476 1.2s linear infinite}@keyframes spin-92ef4476{to{transform:rotate(360deg)}}.info[data-v-92ef4476]{padding:10px}.filename[data-v-92ef4476]{color:var(--text-secondary);font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.status-row[data-v-92ef4476]{margin-top:4px}.status-indicator[data-v-92ef4476]{display:flex;align-items:center;gap:5px;font-size:11px}.status-dot[data-v-92ef4476]{width:6px;height:6px;border-radius:50%;flex-shrink:0}.status-dot.pending[data-v-92ef4476]{background:var(--text-muted)}.status-dot.processing[data-v-92ef4476]{background:var(--color-warning)}.status-dot.ready[data-v-92ef4476]{background:var(--color-success)}.status-dot.failed[data-v-92ef4476]{background:var(--color-danger)}.status-indicator[data-v-92ef4476]{color:var(--text-muted)}.progress-bar[data-v-92ef4476]{height:3px;background:var(--bg-tertiary);border-radius:2px;margin-top:6px;overflow:hidden}.progress-fill[data-v-92ef4476]{height:100%;width:60%;background:var(--accent);border-radius:2px;animation:pulse-92ef4476 1.5s infinite}@keyframes pulse-92ef4476{0%,to{opacity:.6}50%{opacity:1}}.retry-btn[data-v-92ef4476]{display:flex;align-items:center;gap:4px;margin-top:6px;padding:3px 10px;background:#dc26261a;border:1px solid rgba(220,38,38,.3);color:var(--color-danger);border-radius:var(--radius-sm);font-family:var(--font-body);font-size:10px;font-weight:600;cursor:pointer;transition:all var(--transition-fast)}.retry-btn[data-v-92ef4476]:hover{background:#dc262633;border-color:var(--color-danger)}.tags[data-v-92ef4476]{display:flex;flex-wrap:wrap;gap:3px;margin-top:6px}.tag[data-v-92ef4476]{background:var(--accent-muted);color:var(--accent-light);padding:1px 7px;border-radius:8px;font-size:10px}.tag-more[data-v-92ef4476]{background:var(--bg-tertiary);color:var(--text-muted)}.upload-page[data-v-5f15f30c]{width:100%;padding:24px;overflow-y:auto;flex:1}.page-header[data-v-5f15f30c]{margin-bottom:24px}.page-header h2[data-v-5f15f30c]{font-family:var(--font-heading);font-size:22px;font-weight:600}.upload-section[data-v-5f15f30c]{margin-top:28px}.upload-section-header[data-v-5f15f30c]{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.upload-section-header h3[data-v-5f15f30c]{font-family:var(--font-heading);font-size:16px;font-weight:600;color:var(--text-primary)}.summary-badges[data-v-5f15f30c]{display:flex;gap:8px}.badge[data-v-5f15f30c]{font-size:11px;font-weight:600;padding:3px 10px;border-radius:12px}.badge-success[data-v-5f15f30c]{background:#16a34a26;color:var(--color-success)}.badge-warning[data-v-5f15f30c]{background:#d9770626;color:var(--color-warning)}.badge-muted[data-v-5f15f30c]{background:var(--bg-tertiary);color:var(--text-muted)}.upload-grid[data-v-5f15f30c]{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:14px}.skipped-notice[data-v-5f15f30c]{display:flex;align-items:center;gap:8px;background:#d977061a;border:1px solid rgba(217,119,6,.3);color:var(--color-warning);padding:10px 16px;border-radius:var(--radius-md);font-size:13px;font-weight:500;margin-top:16px}.upload-progress-notice[data-v-5f15f30c]{display:flex;align-items:center;gap:8px;background:var(--accent-muted);border:1px solid var(--accent);color:var(--accent);padding:10px 16px;border-radius:var(--radius-md);font-size:13px;font-weight:500;margin-top:16px}.upload-progress-notice svg[data-v-5f15f30c]{animation:spin-5f15f30c 1.2s linear infinite}@keyframes spin-5f15f30c{to{transform:rotate(360deg)}}.error-notice[data-v-5f15f30c]{display:flex;align-items:center;gap:8px;background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:#ef4444;padding:10px 16px;border-radius:var(--radius-md);font-size:13px;font-weight:500;margin-top:16px}.fade-enter-active[data-v-5f15f30c],.fade-leave-active[data-v-5f15f30c]{transition:opacity .3s ease}.fade-enter-from[data-v-5f15f30c],.fade-leave-to[data-v-5f15f30c]{opacity:0}.categories-page[data-v-0d580704]{width:100%;padding:20px 28px 32px;overflow-y:auto;flex:1}.page-header[data-v-0d580704]{display:flex;align-items:baseline;gap:12px;margin-bottom:16px}.page-header h2[data-v-0d580704]{font-family:var(--font-heading);font-size:22px;font-weight:600}.cat-count[data-v-0d580704]{color:var(--text-muted);font-size:13px}.add-form[data-v-0d580704]{display:flex;gap:12px;margin-bottom:20px;flex-wrap:wrap;align-items:flex-end;background:var(--bg-secondary);padding:14px 16px;border-radius:var(--radius-lg);border:1px solid var(--border-light);position:sticky;top:0;z-index:5;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.form-group[data-v-0d580704]{display:flex;flex-direction:column;gap:4px}.form-label[data-v-0d580704]{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted)}.form-select[data-v-0d580704],.form-input[data-v-0d580704]{background:var(--bg-primary);border:1px solid var(--border);color:var(--text-primary);padding:8px 12px;border-radius:var(--radius-sm);font-family:var(--font-body);font-size:13px;outline:none;transition:border-color var(--transition-fast)}.form-select[data-v-0d580704]:focus,.form-input[data-v-0d580704]:focus{border-color:var(--accent)}.form-input[data-v-0d580704]::placeholder{color:var(--text-muted)}.btn-add[data-v-0d580704]{display:flex;align-items:center;gap:6px;background:var(--accent);color:#fff;border:none;padding:8px 18px;border-radius:var(--radius-sm);font-family:var(--font-body);font-size:13px;font-weight:600;cursor:pointer;transition:background var(--transition-fast);white-space:nowrap}.btn-add[data-v-0d580704]:hover{background:var(--accent-hover)}.cat-grid[data-v-0d580704]{display:grid;grid-template-columns:minmax(0,2.4fr) minmax(0,1fr);gap:20px;align-items:start}@media (max-width: 1180px){.cat-grid[data-v-0d580704]{grid-template-columns:1fr}}.cat-section[data-v-0d580704]{background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-lg);padding:16px 18px 18px;min-width:0}.section-heading[data-v-0d580704]{font-family:var(--font-heading);font-size:15px;font-weight:600;color:var(--text-primary);margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid var(--border-light);display:flex;align-items:baseline;gap:8px}.section-count[data-v-0d580704]{font-family:var(--font-body);font-size:11px;font-weight:500;color:var(--text-muted);background:var(--bg-tertiary);padding:1px 8px;border-radius:10px}.tree.multi-col[data-v-0d580704]{column-width:280px;column-gap:24px}.tree.multi-col>.tree-level-0[data-v-0d580704]{break-inside:avoid;-webkit-column-break-inside:avoid;page-break-inside:avoid;display:block}.tree-level-0[data-v-0d580704]{margin-bottom:4px}.tree-level-1[data-v-0d580704],.tree-level-2[data-v-0d580704]{padding-left:22px}.tree-item[data-v-0d580704]{display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:var(--radius-sm);transition:background var(--transition-fast);cursor:pointer;-webkit-user-select:none;user-select:none}.tree-item[data-v-0d580704]:hover{background:var(--bg-secondary)}.tree-chevron[data-v-0d580704]{color:var(--text-muted);flex-shrink:0;transition:transform .15s ease}.tree-chevron.expanded[data-v-0d580704]{transform:rotate(90deg)}.tree-icon[data-v-0d580704]{color:var(--accent);flex-shrink:0}.tree-icon.sub[data-v-0d580704]{color:var(--text-muted)}.tree-dot[data-v-0d580704]{width:5px;height:5px;border-radius:50%;background:var(--text-muted);flex-shrink:0;margin:0 5px}.item-name[data-v-0d580704]{color:var(--text-primary);font-size:14px}.item-zh[data-v-0d580704]{color:var(--text-muted);font-size:12px}.item-count[data-v-0d580704]{background:var(--bg-tertiary);color:var(--text-muted);font-size:10px;font-weight:600;padding:1px 7px;border-radius:10px;margin-left:auto;margin-right:4px}.edit-input[data-v-0d580704]{background:var(--bg-primary);border:1px solid var(--accent);color:var(--text-primary);padding:4px 8px;border-radius:var(--radius-sm);font-family:var(--font-body);font-size:13px;outline:none;min-width:120px}.edit-input-zh[data-v-0d580704]{min-width:80px;max-width:120px}.edit-btn[data-v-0d580704],.save-btn[data-v-0d580704],.cancel-btn[data-v-0d580704],.delete-btn[data-v-0d580704]{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:none;border:none;color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);opacity:0;transition:all var(--transition-fast)}.tree-item:hover .edit-btn[data-v-0d580704],.tree-item:hover .delete-btn[data-v-0d580704],.save-btn[data-v-0d580704],.cancel-btn[data-v-0d580704]{opacity:1}.edit-btn[data-v-0d580704]:hover{background:#3b82f626;color:var(--accent)}.save-btn[data-v-0d580704]:hover{background:#22c55e26;color:var(--color-success)}.cancel-btn[data-v-0d580704]:hover,.delete-btn[data-v-0d580704]:hover{background:#dc262626;color:var(--color-danger)}.cat-images[data-v-0d580704]{padding:8px 12px 8px 44px}.images-loading[data-v-0d580704],.images-empty[data-v-0d580704]{color:var(--text-muted);font-size:12px;padding:4px 0}.images-strip[data-v-0d580704]{display:flex;gap:10px;overflow-x:auto;padding:4px 0 8px}.images-strip[data-v-0d580704]::-webkit-scrollbar{height:4px}.images-strip[data-v-0d580704]::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.img-thumb-card[data-v-0d580704]{flex-shrink:0;width:100px;text-align:center}.img-thumb-card img[data-v-0d580704]{width:100px;height:72px;object-fit:cover;border-radius:var(--radius-sm);border:1px solid var(--border-light)}.img-placeholder[data-v-0d580704]{width:100px;height:72px;background:var(--bg-tertiary);border-radius:var(--radius-sm)}.img-name[data-v-0d580704]{display:block;font-size:10px;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:4px}.empty-state[data-v-0d580704]{display:flex;flex-direction:column;align-items:center;gap:8px;padding:60px 20px;color:var(--text-muted)}.empty-icon[data-v-0d580704]{opacity:.3}.empty-sub[data-v-0d580704]{font-size:13px}.settings-page[data-v-e6849e46]{max-width:720px;padding:24px;overflow-y:auto;flex:1}.page-header[data-v-e6849e46]{margin-bottom:28px}.page-header h2[data-v-e6849e46]{font-family:var(--font-heading);font-size:22px;font-weight:600}.settings-section[data-v-e6849e46]{margin-bottom:32px}.section-title[data-v-e6849e46]{font-family:var(--font-heading);font-size:16px;font-weight:600;color:var(--text-primary);margin-bottom:6px}.section-desc[data-v-e6849e46]{font-size:13px;color:var(--text-muted);margin-bottom:20px}.action-cards[data-v-e6849e46]{display:flex;flex-direction:column;gap:12px}.action-card[data-v-e6849e46]{display:flex;align-items:center;gap:16px;padding:18px 20px;background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-lg, 12px);transition:border-color var(--transition-fast)}.action-card[data-v-e6849e46]:hover{border-color:var(--border-medium, rgba(255,255,255,.12))}.action-icon[data-v-e6849e46]{width:44px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md, 8px);flex-shrink:0}.export-icon[data-v-e6849e46]{background:#3b82f61f;color:#60a5fa}.import-icon[data-v-e6849e46]{background:#d977061f;color:var(--accent)}.action-info[data-v-e6849e46]{flex:1;min-width:0}.action-info h4[data-v-e6849e46]{font-size:14px;font-weight:600;color:var(--text-primary);margin-bottom:3px}.action-info p[data-v-e6849e46]{font-size:12px;color:var(--text-muted);line-height:1.4}.btn[data-v-e6849e46]{padding:8px 18px;font-size:13px;font-weight:600;border:none;border-radius:var(--radius-md, 8px);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;font-family:var(--font-body)}.btn[data-v-e6849e46]:disabled,.btn.disabled[data-v-e6849e46]{opacity:.5;cursor:not-allowed}.btn-primary[data-v-e6849e46]{background:var(--accent);color:#fff}.btn-primary[data-v-e6849e46]:hover:not(:disabled){filter:brightness(1.1)}.btn-secondary[data-v-e6849e46]{background:var(--bg-tertiary);color:var(--text-primary);cursor:pointer}.btn-secondary[data-v-e6849e46]:hover:not(.disabled){background:#ffffff1f}.btn-danger[data-v-e6849e46]{background:#dc2626;color:#fff}.btn-danger[data-v-e6849e46]:hover:not(:disabled){background:#ef4444}.btn-ghost[data-v-e6849e46]{background:none;color:var(--text-secondary)}.btn-ghost[data-v-e6849e46]:hover{color:var(--text-primary)}.modal-overlay[data-v-e6849e46]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal[data-v-e6849e46]{background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-lg, 12px);padding:28px;width:400px;max-width:90vw;box-shadow:0 20px 60px #0006}.modal h3[data-v-e6849e46]{font-family:var(--font-heading);font-size:17px;font-weight:600;margin-bottom:8px}.modal-desc[data-v-e6849e46]{font-size:13px;color:var(--text-muted);margin-bottom:18px;line-height:1.5}.modal-input[data-v-e6849e46]{width:100%;padding:10px 14px;background:var(--bg-primary);border:1px solid var(--border-light);border-radius:var(--radius-md, 8px);color:var(--text-primary);font-size:14px;font-family:var(--font-body);outline:none;transition:border-color var(--transition-fast);box-sizing:border-box}.modal-input[data-v-e6849e46]:focus{border-color:var(--accent)}.modal-error[data-v-e6849e46]{color:#ef4444;font-size:12px;margin-top:8px}.modal-progress[data-v-e6849e46]{font-size:12px;color:var(--text-muted);margin-top:12px;line-height:1.5}.modal-progress-bar[data-v-e6849e46]{display:block;height:4px;background:var(--bg-primary);border-radius:999px;overflow:hidden;margin-top:6px}.modal-progress-fill[data-v-e6849e46]{display:block;height:100%;background:var(--accent);transition:width .2s ease}.modal-actions[data-v-e6849e46]{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.toast[data-v-e6849e46]{position:fixed;bottom:24px;right:24px;padding:12px 20px;border-radius:var(--radius-md, 8px);font-size:13px;font-weight:500;cursor:pointer;z-index:200;animation:slideIn-e6849e46 .3s ease}.toast-success[data-v-e6849e46]{background:#16a34ae6;color:#fff}@keyframes slideIn-e6849e46{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}@media (max-width: 768px){.action-card[data-v-e6849e46]{flex-direction:column;align-items:stretch;text-align:center;gap:12px}.action-icon[data-v-e6849e46]{margin:0 auto}.btn[data-v-e6849e46]{width:100%;text-align:center}}.dropzone[data-v-5200ec53]{border:2px dashed var(--border);border-radius:var(--radius-lg);padding:60px;text-align:center;cursor:pointer;transition:border-color var(--transition-normal);background:var(--bg-secondary);max-width:520px;margin:40px auto}.dropzone.dragging[data-v-5200ec53]{border-color:var(--accent)}.dropzone.busy[data-v-5200ec53]{opacity:.6;pointer-events:none}.icon[data-v-5200ec53]{font-size:48px}.hint[data-v-5200ec53]{margin-top:12px;font-size:16px;color:var(--text-primary)}.sub[data-v-5200ec53]{margin-top:8px;font-size:12px;color:var(--text-muted)}.error[data-v-5200ec53]{margin-top:12px;color:var(--color-danger);font-size:13px}.hidden[data-v-5200ec53]{display:none}.config[data-v-67ccd10d]{max-width:720px;margin:0 auto}.sheet-picker[data-v-67ccd10d]{display:flex;align-items:center;gap:12px;margin-top:8px;font-size:13px}.sheet-picker label[data-v-67ccd10d]{color:var(--text-primary)}.sheet-picker select[data-v-67ccd10d]{margin-left:6px;padding:4px 8px;background:var(--bg-primary);color:var(--text-primary);border:1px solid var(--border);border-radius:var(--radius-sm)}.sheet-picker .switching[data-v-67ccd10d]{color:var(--text-muted)}.sheet-picker .sheet-error[data-v-67ccd10d]{color:var(--color-danger)}.preview table[data-v-67ccd10d]{width:100%;border-collapse:collapse;font-size:13px}.preview th[data-v-67ccd10d],.preview td[data-v-67ccd10d]{border:1px solid var(--border);padding:6px}.form label[data-v-67ccd10d]{display:block;margin:12px 0 4px;color:var(--text-primary)}.warn[data-v-67ccd10d]{color:var(--color-warning);font-size:12px}.skip[data-v-67ccd10d]{padding:12px;background:var(--bg-secondary);border-radius:var(--radius-sm);margin-top:12px}button[data-v-67ccd10d]{margin-top:20px;padding:10px 18px;background:var(--accent);color:#fff;border:none;border-radius:var(--radius-md);cursor:pointer;transition:background var(--transition-normal)}button[data-v-67ccd10d]:hover:not(:disabled){background:var(--accent-hover)}button[data-v-67ccd10d]:disabled{opacity:.4;cursor:not-allowed}.row-card[data-v-03a48d1f]{padding:14px;border-radius:var(--radius-lg);background:var(--bg-secondary);margin-bottom:12px}.row-card.skipped[data-v-03a48d1f]{opacity:.35}.top[data-v-03a48d1f]{display:flex;gap:12px;align-items:start}.meta[data-v-03a48d1f]{flex:1}.idx[data-v-03a48d1f]{font-size:11px;color:var(--text-muted)}.query[data-v-03a48d1f]{font-size:15px;font-weight:600;color:var(--text-primary)}.query.override[data-v-03a48d1f]{margin-top:2px}.override-tag[data-v-03a48d1f]{display:inline-block;font-size:10px;padding:1px 6px;margin-right:6px;background:var(--accent);color:#fff;border-radius:8px;vertical-align:middle;text-transform:uppercase}.code-tag[data-v-03a48d1f]{font-weight:400;color:var(--text-muted);font-size:13px}.badge[data-v-03a48d1f]{padding:2px 8px;border-radius:10px;font-size:11px;background:var(--bg-tertiary);color:var(--text-secondary)}.no-image-btn[data-v-03a48d1f]{padding:4px 10px;font-size:11px;background:transparent;color:var(--text-muted);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap}.no-image-btn[data-v-03a48d1f]:hover{color:var(--text-primary);border-color:var(--text-secondary, var(--text-primary))}.no-image-btn.active[data-v-03a48d1f]{color:var(--color-warning, #d97706);border-color:var(--color-warning, #d97706)}.footer.no-image[data-v-03a48d1f]{color:var(--color-warning, #d97706)}.candidates-wrap[data-v-03a48d1f]{margin-top:12px}.candidates[data-v-03a48d1f]{display:flex;gap:8px;flex-wrap:wrap}.candidate[data-v-03a48d1f]{flex-shrink:0;cursor:pointer;text-align:center}.candidate img[data-v-03a48d1f]{width:72px;height:72px;border-radius:var(--radius-sm);object-fit:cover;border:2px solid transparent;transition:var(--transition-normal)}.candidate.selected img[data-v-03a48d1f]{border-color:var(--accent);width:96px;height:96px}.score[data-v-03a48d1f]{font-size:10px;margin-top:2px;color:var(--text-muted)}.candidate.selected .score[data-v-03a48d1f]{color:var(--accent);font-weight:600}.show-more-btn[data-v-03a48d1f]{margin-top:6px;padding:4px 12px;font-size:11px;background:transparent;color:var(--text-muted);border:1px dashed var(--border);border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition-fast, all .15s)}.show-more-btn[data-v-03a48d1f]:hover{color:var(--accent);border-color:var(--accent)}.empty[data-v-03a48d1f]{color:var(--text-muted);font-size:13px}.empty.error[data-v-03a48d1f]{color:var(--color-danger)}.research[data-v-03a48d1f]{margin-top:12px;display:flex;gap:8px;align-items:center}.query-input[data-v-03a48d1f]{flex:1;padding:6px 10px;background:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary)}.query-input.dirty[data-v-03a48d1f]{border-color:var(--accent)}.search-btn[data-v-03a48d1f]{padding:6px 12px;font-size:12px;white-space:nowrap;background:var(--accent);color:#fff;border:none;border-radius:var(--radius-sm);cursor:pointer;transition:background var(--transition-normal)}.search-btn[data-v-03a48d1f]:hover{background:var(--accent-hover)}.footer[data-v-03a48d1f]{margin-top:10px;padding-top:10px;border-top:1px solid var(--border);font-size:11px;color:var(--text-muted)}.research-error[data-v-03a48d1f]{margin-top:6px;font-size:12px;color:var(--color-danger)}code[data-v-03a48d1f]{background:var(--bg-tertiary);padding:1px 5px;border-radius:3px;color:var(--text-primary)}.row-list[data-v-91f18d49]{flex:1;min-height:0;width:100%;max-width:960px;margin:0 auto;display:flex;flex-direction:column}.row-list>.progress[data-v-91f18d49],.row-list>.filter-bar[data-v-91f18d49],.row-list>.status-chips[data-v-91f18d49],.row-list>.select-helpers[data-v-91f18d49],.row-list>.batch-bar[data-v-91f18d49]{flex-shrink:0}.cards-scroll[data-v-91f18d49]{flex:1;min-height:0;overflow-y:auto;padding:4px 4px 16px;margin:0 -4px}.progress[data-v-91f18d49]{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-bottom:8px;font-size:13px;color:var(--text-muted)}.progress .sep[data-v-91f18d49]{opacity:.5}.progress .progress-done[data-v-91f18d49]{color:var(--accent);font-weight:600}.auto-match-loading[data-v-91f18d49]{display:flex;align-items:center;gap:10px;padding:10px 14px;margin-bottom:10px;background:var(--bg-secondary);border:1px solid var(--accent);border-radius:var(--radius-sm);color:var(--text-primary);font-size:13px}.auto-match-loading .spinner[data-v-91f18d49]{width:14px;height:14px;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin-91f18d49 .8s linear infinite}@keyframes spin-91f18d49{to{transform:rotate(360deg)}}.filter-hide-skipped[data-v-91f18d49]{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--text-secondary, var(--text-primary));white-space:nowrap}.filter-hide-skipped input[data-v-91f18d49]{margin:0}.filter-bar[data-v-91f18d49]{display:flex;gap:12px;align-items:center;flex-wrap:wrap;padding:10px;background:var(--bg-secondary);border-radius:var(--radius-sm);margin-bottom:8px}.filter-text[data-v-91f18d49]{flex:1;min-width:200px;padding:6px 10px;background:var(--bg-primary);border:1px solid var(--border);color:var(--text-primary);border-radius:var(--radius-sm)}.status-chips[data-v-91f18d49]{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}.chip[data-v-91f18d49]{padding:4px 10px;font-size:12px;background:var(--bg-secondary);color:var(--text-secondary, var(--text-primary));border:1px solid var(--border);border-radius:999px;cursor:pointer;transition:var(--transition-fast, all .15s)}.chip[data-v-91f18d49]:hover{background:var(--bg-tertiary);color:var(--text-primary)}.chip.active[data-v-91f18d49]{background:var(--accent-muted, var(--accent));color:var(--accent);border-color:var(--accent)}.chip-clear[data-v-91f18d49]{background:transparent;color:var(--text-muted);border-style:dashed}.preview-overlay[data-v-91f18d49]{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b8;display:flex;align-items:center;justify-content:center;z-index:100;padding:24px}.preview-modal[data-v-91f18d49]{position:relative;background:var(--bg-secondary);border-radius:var(--radius-lg);padding:20px;max-width:640px;width:100%;max-height:calc(100vh - 48px);display:flex;flex-direction:column;box-shadow:var(--shadow-lg, 0 20px 50px rgba(0,0,0,.5))}.preview-close[data-v-91f18d49]{position:absolute;top:8px;right:12px;background:none;border:none;color:var(--text-muted);font-size:24px;line-height:1;cursor:pointer;padding:4px 8px}.preview-close[data-v-91f18d49]:hover{color:var(--text-primary)}.preview-query[data-v-91f18d49]{padding:10px 12px;margin-bottom:12px;background:var(--bg-primary);border-left:3px solid var(--accent);border-radius:var(--radius-sm)}.preview-query-label[data-v-91f18d49]{font-size:11px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:2px}.preview-query-text[data-v-91f18d49]{font-size:15px;font-weight:600;color:var(--text-primary);line-height:1.4;word-break:break-word}.preview-query-text.override[data-v-91f18d49]{margin-top:4px}.preview-code[data-v-91f18d49]{font-weight:400;color:var(--text-muted);font-size:13px}.preview-desc[data-v-91f18d49]{margin-top:4px;font-size:13px;color:var(--text-secondary, var(--text-primary));line-height:1.5;word-break:break-word;opacity:.85}.override-tag[data-v-91f18d49]{display:inline-block;font-size:10px;padding:1px 6px;margin-right:6px;background:var(--accent);color:#fff;border-radius:8px;vertical-align:middle;text-transform:uppercase}.preview-image-wrap[data-v-91f18d49]{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;background:var(--bg-primary);border-radius:var(--radius-sm);overflow:hidden;margin-bottom:16px}.preview-image-wrap img[data-v-91f18d49]{max-width:100%;max-height:60vh;object-fit:contain}.preview-no-image[data-v-91f18d49]{color:var(--text-muted);padding:60px}.preview-info[data-v-91f18d49]{margin-bottom:16px}.preview-name[data-v-91f18d49]{font-size:16px;font-weight:600;color:var(--text-primary);word-break:break-all}.preview-meta[data-v-91f18d49]{margin-top:4px;font-size:12px;color:var(--text-muted)}.preview-tags[data-v-91f18d49]{margin-top:8px;display:flex;flex-wrap:wrap;gap:4px}.preview-tags .tag[data-v-91f18d49]{font-size:11px;padding:2px 8px;background:var(--bg-tertiary);color:var(--text-secondary, var(--text-primary));border-radius:10px}.preview-actions[data-v-91f18d49]{display:flex;gap:10px;justify-content:flex-end}.preview-actions button[data-v-91f18d49]{padding:8px 16px;background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;font-size:14px}.preview-actions button[data-v-91f18d49]:hover{background:var(--bg-primary)}.preview-actions button.primary[data-v-91f18d49]{background:var(--accent);color:#fff;border-color:var(--accent)}.preview-actions button.primary[data-v-91f18d49]:hover{background:var(--accent-hover)}.filter-score[data-v-91f18d49]{color:var(--text-secondary, var(--text-primary));font-size:13px}.filter-score input[data-v-91f18d49]{width:70px;margin-left:4px;padding:4px;background:var(--bg-primary);border:1px solid var(--border);color:var(--text-primary);border-radius:var(--radius-sm)}.select-helpers[data-v-91f18d49]{margin-bottom:10px}.select-helpers button[data-v-91f18d49]{margin-right:8px;font-size:12px;padding:4px 10px;background:var(--bg-secondary);border:1px solid var(--border);color:var(--text-primary);border-radius:var(--radius-sm);cursor:pointer}.select-helpers button[data-v-91f18d49]:hover{background:var(--bg-tertiary)}.batch-bar[data-v-91f18d49]{display:flex;gap:10px;align-items:center;padding:10px;background:var(--bg-secondary);border:1px solid var(--accent);border-radius:var(--radius-sm);margin-bottom:12px;color:var(--text-primary)}.batch-bar button[data-v-91f18d49]{padding:6px 12px;background:var(--accent);color:#fff;border:none;border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition-normal)}.batch-bar button[data-v-91f18d49]:hover{background:var(--accent-hover)}.excel-match-view[data-v-6cd13e76]{padding:16px 24px 0;flex:1;min-height:0;display:flex;flex-direction:column}.view-header[data-v-6cd13e76]{margin-bottom:12px}.view-header[data-v-6cd13e76],.error-banner[data-v-6cd13e76]{flex-shrink:0}.stage-scroll[data-v-6cd13e76]{flex:1;min-height:0;overflow-y:auto}.view-header[data-v-6cd13e76]{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.view-header h1[data-v-6cd13e76]{margin:0}.swap-file-btn[data-v-6cd13e76]{padding:6px 14px;background:transparent;color:var(--text-secondary, var(--text-primary));border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;font-size:13px;transition:var(--transition-normal)}.swap-file-btn[data-v-6cd13e76]:hover{background:var(--bg-secondary);color:var(--text-primary);border-color:var(--accent)}.error-banner[data-v-6cd13e76]{display:flex;align-items:center;gap:12px;margin-bottom:16px;padding:12px 16px;background:#dc262626;border:1px solid var(--color-danger);border-radius:var(--radius-sm);color:var(--text-primary)}.error-banner button[data-v-6cd13e76]{background:var(--accent);color:#fff;border:none;border-radius:var(--radius-md);padding:6px 14px;cursor:pointer;flex-shrink:0}.error-banner button[data-v-6cd13e76]:hover{background:var(--accent-hover)}.stage-c[data-v-6cd13e76]{flex:1;min-height:0;display:flex;flex-direction:column}.action-bar[data-v-6cd13e76]{flex-shrink:0;padding:12px;background:var(--bg-primary);border-top:1px solid var(--border);display:flex;gap:12px;align-items:center;justify-content:flex-end;flex-wrap:wrap}.export-opt[data-v-6cd13e76]{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--text-secondary, var(--text-primary));white-space:nowrap}.export-opt input[type=checkbox][data-v-6cd13e76]{margin:0}.folder-input[data-v-6cd13e76]{width:120px;padding:5px 8px;background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:13px}.folder-input[data-v-6cd13e76]:disabled{opacity:.5;cursor:not-allowed}.format-select[data-v-6cd13e76]{padding:5px 8px;background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:13px}.format-select[data-v-6cd13e76]:disabled{opacity:.5;cursor:not-allowed}.export-error[data-v-6cd13e76]{color:var(--color-danger);font-size:12px;margin-right:auto}.btn-spinner[data-v-6cd13e76]{display:inline-block;width:12px;height:12px;margin-right:6px;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;vertical-align:-2px;animation:btn-spin-6cd13e76 .8s linear infinite}@keyframes btn-spin-6cd13e76{to{transform:rotate(360deg)}}.action-bar button[data-v-6cd13e76]:disabled{opacity:.55;cursor:not-allowed}.action-bar button[data-v-6cd13e76]{padding:8px 16px;background:var(--accent);color:#fff;border:none;border-radius:var(--radius-sm);cursor:pointer;font-size:14px;transition:var(--transition-normal)}.action-bar button[data-v-6cd13e76]:hover{background:var(--accent-hover)}.action-bar .rematch[data-v-6cd13e76]{background:transparent;color:var(--text-secondary, var(--text-primary));border:1px solid var(--border);margin-right:auto}.action-bar .rematch[data-v-6cd13e76]:hover{border-color:var(--accent);color:var(--accent);background:transparent}.action-bar .danger[data-v-6cd13e76]{background:transparent;color:var(--color-danger);border:1px solid var(--color-danger)}.action-bar .danger[data-v-6cd13e76]:hover{background:var(--color-danger);color:#fff}.dedup-card[data-v-2823b329]{background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-lg);overflow:hidden}.card-images[data-v-2823b329]{display:flex;gap:1px;background:var(--border-light)}.member[data-v-2823b329]{flex:1;min-width:0;background:var(--bg-secondary);position:relative;cursor:pointer;transition:opacity var(--transition-fast)}.member.delete[data-v-2823b329]{opacity:.55}.member.keep[data-v-2823b329]{box-shadow:inset 0 0 0 2px var(--color-success)}.member-thumb[data-v-2823b329]{position:relative;overflow:hidden}.member-thumb img[data-v-2823b329]{width:100%;height:180px;object-fit:cover}.placeholder[data-v-2823b329]{width:100%;height:180px;background:var(--bg-tertiary)}.zoom-btn[data-v-2823b329]{position:absolute;top:8px;right:8px;display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;border:1px solid rgba(255,255,255,.2);background:#0000008c;color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);transition:all var(--transition-fast);z-index:2}.zoom-btn[data-v-2823b329]:hover{background:#000c;border-color:var(--accent);color:var(--accent)}.keep-pill[data-v-2823b329]{position:absolute;left:8px;right:8px;bottom:8px;display:flex;align-items:center;justify-content:center;gap:6px;padding:7px 10px;border:none;border-radius:var(--radius-sm);font-size:12px;font-weight:600;letter-spacing:.3px;color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);transition:filter var(--transition-fast)}.keep-pill[data-v-2823b329]:not(.kept){background:#dc2626e0}.keep-pill.kept[data-v-2823b329]{background:#22c55eeb}.keep-pill[data-v-2823b329]:hover:not(:disabled){filter:brightness(1.12)}.keep-pill[data-v-2823b329]:disabled{cursor:not-allowed;opacity:.75}.member-info[data-v-2823b329]{padding:8px 10px;display:flex;flex-direction:column;gap:2px}.member-name[data-v-2823b329]{font-size:12px;font-weight:500;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.member-meta[data-v-2823b329]{font-size:11px;color:var(--text-muted)}.member-date[data-v-2823b329]{font-size:10px;color:var(--text-muted)}.card-footer[data-v-2823b329]{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-top:1px solid var(--border-light);gap:10px}.similarity-badge[data-v-2823b329]{font-size:12px;color:var(--text-muted);background:var(--bg-tertiary);padding:3px 10px;border-radius:10px;flex-shrink:0}.selection-hint[data-v-2823b329]{font-size:11px;color:var(--text-muted);flex:1}.card-actions[data-v-2823b329]{display:flex;gap:8px;flex-shrink:0}.btn-ignore[data-v-2823b329]{padding:6px 14px;border-radius:var(--radius-sm);border:1px solid var(--border);background:transparent;color:var(--text-secondary);font-size:12px;cursor:pointer;transition:all var(--transition-fast)}.btn-ignore[data-v-2823b329]:hover{background:var(--bg-tertiary)}.btn-resolve[data-v-2823b329]{padding:6px 14px;border-radius:var(--radius-sm);border:none;background:var(--color-danger);color:#fff;font-size:12px;font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.btn-resolve[data-v-2823b329]:hover{filter:brightness(1.1)}.btn-resolve[data-v-2823b329]:disabled{opacity:.4;cursor:not-allowed}.sidebar-content[data-v-8049c240]{padding:16px}.sidebar-section[data-v-8049c240]{margin-bottom:8px}.sidebar-header[data-v-8049c240]{margin-bottom:12px;padding:0 4px}.sidebar-title[data-v-8049c240]{font-family:var(--font-heading);font-size:14px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.8px}.section-divider[data-v-8049c240]{height:1px;background:#ffffff14;margin:16px 4px}.scan-controls[data-v-8049c240]{display:flex;flex-direction:column;gap:10px;padding:0 4px}.threshold-label[data-v-8049c240]{font-size:12px;color:var(--text-muted);display:flex;flex-direction:column;gap:4px}.threshold-slider[data-v-8049c240]{width:100%;accent-color:var(--accent)}.scan-btn[data-v-8049c240]{display:flex;align-items:center;justify-content:center;gap:6px;padding:8px 14px;border-radius:var(--radius-sm);border:none;background:var(--accent);color:#fff;font-size:13px;font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.scan-btn[data-v-8049c240]:hover{filter:brightness(1.1)}.scan-btn[data-v-8049c240]:disabled{opacity:.5;cursor:not-allowed}.scan-progress[data-v-8049c240]{padding:8px 4px;display:flex;flex-direction:column;gap:4px}.progress-bar[data-v-8049c240]{height:4px;background:var(--bg-tertiary);border-radius:2px;overflow:hidden}.progress-fill[data-v-8049c240]{height:100%;background:var(--accent);transition:width .3s ease}.progress-text[data-v-8049c240]{font-size:11px;color:var(--text-muted)}.groups-found[data-v-8049c240]{font-size:11px;color:var(--color-success);font-weight:500}.filter-tabs[data-v-8049c240]{display:flex;gap:4px}.tab-btn[data-v-8049c240]{flex:1;padding:6px 10px;border:1px solid var(--border-light);background:transparent;color:var(--text-muted);font-size:12px;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast)}.tab-btn[data-v-8049c240]:hover{background:var(--bg-tertiary)}.tab-btn.active[data-v-8049c240]{background:var(--accent-muted);color:var(--accent);border-color:var(--accent);font-weight:600}.dedup-content[data-v-8049c240]{flex:1;overflow-y:auto;min-height:0;padding:0 20px 20px}.groups-list[data-v-8049c240]{display:flex;flex-direction:column;gap:16px}.loading[data-v-8049c240]{display:flex;align-items:center;gap:8px;color:var(--text-muted);font-size:14px;padding:40px 0;justify-content:center}.empty-state[data-v-8049c240]{display:flex;flex-direction:column;align-items:center;gap:12px;color:var(--text-muted);text-align:center;padding:60px 20px}.empty-icon[data-v-8049c240]{opacity:.3}.empty-state p[data-v-8049c240]{font-size:14px}.pagination[data-v-8049c240]{display:flex;align-items:center;justify-content:center;gap:16px;padding:10px 20px;border-top:1px solid var(--border-light);background:var(--bg-secondary);flex-shrink:0}.pagination button[data-v-8049c240]{padding:6px 14px;border-radius:var(--radius-sm);border:1px solid var(--border);background:transparent;color:var(--text-secondary);font-size:12px;cursor:pointer}.pagination button[data-v-8049c240]:disabled{opacity:.3;cursor:not-allowed}.pagination span[data-v-8049c240]{font-size:12px;color:var(--text-muted)}.spin-icon[data-v-8049c240]{animation:spin-8049c240 1.2s linear infinite}@keyframes spin-8049c240{to{transform:rotate(360deg)}}.bulk-toolbar[data-v-8049c240]{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;padding:10px 14px;margin-bottom:16px;background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:0 2px 8px #00000040}.bulk-count[data-v-8049c240]{font-size:12px;color:var(--text-muted)}.bulk-clean-btn[data-v-8049c240]{padding:8px 18px;border-radius:var(--radius-sm);border:none;background:var(--color-danger);color:#fff;font-size:13px;font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.bulk-clean-btn[data-v-8049c240]:hover:not(:disabled){filter:brightness(1.1)}.bulk-clean-btn[data-v-8049c240]:disabled{opacity:.4;cursor:not-allowed}.bulk-clean-btn[data-v-8049c240]{display:inline-flex;align-items:center;gap:6px}.bulk-overlay[data-v-8049c240]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;display:flex;align-items:center;justify-content:center;z-index:100;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.bulk-overlay-card[data-v-8049c240]{display:flex;align-items:center;gap:14px;padding:18px 24px;background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:0 8px 24px #00000080;color:var(--text-secondary)}.bulk-overlay-title[data-v-8049c240]{font-size:14px;font-weight:600;color:var(--text-primary)}.bulk-overlay-sub[data-v-8049c240]{font-size:12px;color:var(--text-muted);margin-top:2px}.modal-overlay[data-v-418ec9b5]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:100}.modal-box[data-v-418ec9b5]{background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-lg);padding:24px;width:380px;max-width:90vw}.modal-box h3[data-v-418ec9b5]{margin:0 0 8px;font-size:16px;color:var(--text-primary)}.modal-desc[data-v-418ec9b5]{font-size:13px;color:var(--text-secondary);margin:0 0 16px}.modal-input[data-v-418ec9b5]{width:100%;padding:10px 12px;background:var(--bg-tertiary);border:1px solid var(--border-light);border-radius:var(--radius-sm);color:var(--text-primary);font-size:14px;outline:none;box-sizing:border-box}.modal-input[data-v-418ec9b5]:focus{border-color:var(--accent)}.modal-error[data-v-418ec9b5]{color:#ef4444;font-size:12px;margin:8px 0 0}.modal-actions[data-v-418ec9b5]{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}.btn-cancel[data-v-418ec9b5],.btn-confirm[data-v-418ec9b5]{padding:8px 16px;border-radius:var(--radius-sm);border:none;font-size:13px;font-weight:500;cursor:pointer}.btn-cancel[data-v-418ec9b5]{background:var(--bg-tertiary);color:var(--text-secondary)}.btn-cancel[data-v-418ec9b5]:hover{background:var(--border-light)}.btn-confirm[data-v-418ec9b5]{background:#ef4444;color:#fff}.btn-confirm[data-v-418ec9b5]:hover{background:#dc2626}.btn-confirm[data-v-418ec9b5]:disabled{opacity:.5;cursor:not-allowed}.trash-page[data-v-b2ed5343]{flex:1;width:100%;padding:24px;max-width:1200px;overflow-y:auto}.trash-header[data-v-b2ed5343]{display:flex;align-items:center;gap:12px;margin-bottom:16px}.trash-header h2[data-v-b2ed5343]{margin:0;font-size:20px;color:var(--text-primary)}.trash-count[data-v-b2ed5343]{background:var(--bg-tertiary);color:var(--text-muted);font-size:12px;font-weight:600;padding:2px 10px;border-radius:10px}.trash-filters[data-v-b2ed5343]{display:flex;gap:8px;margin-bottom:16px;flex-wrap:wrap;align-items:center}.trash-search[data-v-b2ed5343]{flex:1;min-width:200px;padding:8px 12px;background:var(--bg-tertiary);border:1px solid var(--border-light);border-radius:var(--radius-sm);color:var(--text-primary);font-size:13px;outline:none}.trash-search[data-v-b2ed5343]:focus{border-color:var(--accent)}.btn-filter[data-v-b2ed5343]{padding:8px 16px;background:var(--accent);color:#fff;border:none;border-radius:var(--radius-sm);font-size:13px;font-weight:500;cursor:pointer}.btn-purge-all[data-v-b2ed5343]{padding:8px 16px;background:#ef4444;color:#fff;border:none;border-radius:var(--radius-sm);font-size:13px;font-weight:500;cursor:pointer;margin-left:auto}.btn-purge-all[data-v-b2ed5343]:hover{background:#dc2626}.trash-actions[data-v-b2ed5343]{display:flex;align-items:center;gap:12px;padding:10px 16px;background:var(--bg-tertiary);border-radius:var(--radius-md);margin-bottom:16px;font-size:13px;color:var(--text-secondary)}.btn-restore[data-v-b2ed5343]{padding:6px 14px;background:#22c55e;color:#fff;border:none;border-radius:var(--radius-sm);font-size:12px;font-weight:500;cursor:pointer}.btn-restore[data-v-b2ed5343]:hover{background:#16a34a}.btn-purge[data-v-b2ed5343]{padding:6px 14px;background:#ef4444;color:#fff;border:none;border-radius:var(--radius-sm);font-size:12px;font-weight:500;cursor:pointer}.btn-purge[data-v-b2ed5343]:hover{background:#dc2626}.trash-loading[data-v-b2ed5343],.trash-empty[data-v-b2ed5343]{text-align:center;padding:60px 20px;color:var(--text-muted);font-size:14px}.trash-weeks[data-v-b2ed5343]{display:flex;flex-direction:column;gap:8px}.week-section[data-v-b2ed5343]{background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-md);overflow:hidden}.week-header[data-v-b2ed5343]{display:flex;align-items:center;gap:10px;width:100%;padding:12px 16px;background:none;border:none;color:var(--text-primary);font-family:var(--font-body);font-size:13px;font-weight:600;cursor:pointer;transition:background var(--transition-fast)}.week-header[data-v-b2ed5343]:hover{background:var(--bg-tertiary)}.week-chevron[data-v-b2ed5343]{flex-shrink:0;color:var(--text-muted);transition:transform var(--transition-fast)}.week-chevron.expanded[data-v-b2ed5343]{transform:rotate(90deg)}.week-label[data-v-b2ed5343]{flex:1;text-align:left}.week-count[data-v-b2ed5343]{color:var(--text-muted);font-weight:400;font-size:12px}.week-days-left[data-v-b2ed5343]{color:#f59e0b;font-size:11px;font-weight:500;background:#f59e0b1a;padding:2px 8px;border-radius:10px}.week-body[data-v-b2ed5343]{padding:4px 12px 12px}.week-grid[data-v-b2ed5343]{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:10px}.trash-card[data-v-b2ed5343]{position:relative;background:var(--bg-tertiary);border:2px solid transparent;border-radius:var(--radius-sm);overflow:hidden;cursor:pointer;transition:border-color var(--transition-fast)}.trash-card[data-v-b2ed5343]:hover{border-color:var(--border)}.trash-card.checked[data-v-b2ed5343]{border-color:var(--accent)}.card-thumb[data-v-b2ed5343]{position:relative;aspect-ratio:1;background:var(--bg-primary)}.card-thumb img[data-v-b2ed5343]{width:100%;height:100%;object-fit:cover}.check-overlay[data-v-b2ed5343]{position:absolute;top:6px;left:6px;z-index:2;opacity:0;transition:opacity var(--transition-fast)}.trash-card:hover .check-overlay[data-v-b2ed5343],.check-overlay.visible[data-v-b2ed5343]{opacity:1}.check-box[data-v-b2ed5343]{display:flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:4px;border:2px solid rgba(255,255,255,.6);background:#0000004d;cursor:pointer;transition:all var(--transition-fast)}.check-box.on[data-v-b2ed5343]{background:var(--accent);border-color:var(--accent)}.card-placeholder[data-v-b2ed5343]{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:24px;color:var(--text-muted)}.days-badge[data-v-b2ed5343]{position:absolute;top:6px;right:6px;background:#000000b3;color:#f59e0b;font-size:10px;font-weight:600;padding:2px 6px;border-radius:4px}.card-info[data-v-b2ed5343]{padding:6px 8px}.card-filename[data-v-b2ed5343]{display:block;font-size:11px;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card-date[data-v-b2ed5343]{font-size:10px;color:var(--text-muted)}
