.login-container[data-v-934e65d9]{display:flex;justify-content:center;align-items:center;min-height:calc(100vh - 100px);padding:var(--spacing-xl);background:linear-gradient(135deg,#f5f7fa,#e8eef5)}.login-box[data-v-934e65d9]{width:100%;max-width:420px;background:var(--white);border:1px solid var(--border-color);border-radius:12px;padding:48px 40px;box-shadow:0 4px 24px #00000014;transition:box-shadow .3s ease}.login-box[data-v-934e65d9]:hover{box-shadow:0 8px 32px #0000001f}.login-title[data-v-934e65d9]{font-size:28px;font-weight:600;color:var(--text-color);text-align:center;margin-bottom:40px;letter-spacing:.5px}.login-form[data-v-934e65d9]{display:flex;flex-direction:column;gap:24px}.form-item[data-v-934e65d9]{display:flex;flex-direction:column;gap:8px}.form-label[data-v-934e65d9]{font-size:14px;color:var(--text-secondary);font-weight:500;margin-left:4px}.form-item .input[data-v-934e65d9]{padding:12px 16px;font-size:15px;border-radius:8px;transition:border-color .3s ease,box-shadow .3s ease}.form-item .input[data-v-934e65d9]:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px #10b9811a;outline:none}.login-button[data-v-934e65d9]{width:100%;margin-top:8px;padding:14px var(--spacing-md);font-size:16px;font-weight:500;border-radius:8px;transition:all .3s ease}.login-button[data-v-934e65d9]:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #10b9814d}.login-button[data-v-934e65d9]:active:not(:disabled){transform:translateY(0)}.error-text[data-v-934e65d9]{text-align:center;margin-top:-8px}@media (max-width: 768px){.login-container[data-v-934e65d9]{padding:var(--spacing-md);min-height:calc(100vh - 80px)}.login-box[data-v-934e65d9]{padding:32px 24px;border-radius:8px}.login-title[data-v-934e65d9]{font-size:24px;margin-bottom:32px}.login-form[data-v-934e65d9]{gap:20px}}@media (min-width: 769px) and (max-width: 1024px){.login-box[data-v-934e65d9]{max-width:400px;padding:40px 36px}}.login-card[data-v-833093b3]{max-width:400px;margin:100px auto}.section-title[data-v-833093b3]{font-size:20px;font-weight:600;color:var(--text-color);text-align:center;margin-bottom:var(--spacing-lg)}.form-grid[data-v-833093b3]{display:flex;flex-direction:column;gap:var(--spacing-md)}.form-grid label[data-v-833093b3]{font-size:13px;font-weight:500;color:var(--text-secondary)}.submit-container[data-v-d2f56b21]{max-width:600px;margin:0 auto}.form-title[data-v-d2f56b21]{font-size:18px;font-weight:600;margin-bottom:var(--spacing-lg);color:var(--text-color)}.form-grid[data-v-d2f56b21]{display:flex;flex-direction:column;gap:var(--spacing-md)}.form-label[data-v-d2f56b21]{font-size:13px;font-weight:500;color:var(--text-secondary)}.file-input-group[data-v-d2f56b21]{display:flex;flex-direction:column;gap:var(--spacing-sm)}.file-button[data-v-d2f56b21]{display:inline-block;padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-color);border:1px solid var(--border-color);color:var(--text-color);font-size:13px;cursor:pointer;text-align:center}.file-button[data-v-d2f56b21]:hover{background:var(--border-color)}.file-input-hidden[data-v-d2f56b21]{display:none}.preview-grid[data-v-d2f56b21]{display:flex;gap:var(--spacing-sm);flex-wrap:wrap}.preview-image[data-v-d2f56b21]{width:120px;height:120px;object-fit:cover;border:1px solid var(--border-color)}.my-submissions[data-v-2386a159]{max-width:1200px;margin:0 auto}.header-row[data-v-2386a159]{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg)}.page-title[data-v-2386a159]{font-size:18px;font-weight:600;color:var(--text-color)}.filter-grid[data-v-2386a159]{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--spacing-sm);margin-bottom:var(--spacing-lg)}.table-wrapper[data-v-2386a159]{overflow-x:auto;margin-bottom:var(--spacing-lg)}.card-list[data-v-2386a159]{display:none}.data-table[data-v-2386a159]{width:100%;border-collapse:collapse;font-size:13px}.data-table th[data-v-2386a159],.data-table td[data-v-2386a159]{padding:var(--spacing-sm);text-align:left;border-bottom:1px solid var(--border-color)}.data-table th[data-v-2386a159]{background:var(--bg-color);font-weight:600;color:var(--text-secondary)}.data-table tbody tr[data-v-2386a159]:hover{background:var(--bg-color)}.thumb-row[data-v-2386a159]{display:flex;gap:var(--spacing-xs)}.thumb[data-v-2386a159]{width:40px;height:40px;object-fit:cover;border:1px solid var(--border-color);cursor:pointer}.thumb[data-v-2386a159]:hover{opacity:.8}.ghost-button[data-v-2386a159]{padding:var(--spacing-xs) var(--spacing-sm);background:transparent;color:var(--primary-color);border:1px solid var(--primary-color);font-size:12px;margin-right:var(--spacing-xs)}.ghost-button[data-v-2386a159]:hover{background:var(--primary-color);color:var(--white)}.pagination[data-v-2386a159]{display:flex;justify-content:center;align-items:center;gap:var(--spacing-md);flex-wrap:wrap}.page-size-select[data-v-2386a159]{width:120px}.page-info[data-v-2386a159]{font-size:13px;color:var(--text-secondary)}.modal-mask[data-v-2386a159]{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--spacing-lg)}.modal-content[data-v-2386a159]{background:var(--white);border:1px solid var(--border-color);max-width:600px;width:100%;max-height:90vh;overflow-y:auto;padding:var(--spacing-lg)}.modal-content.image-modal[data-v-2386a159]{max-width:90vw}.modal-header[data-v-2386a159]{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--border-color)}.modal-title[data-v-2386a159]{font-size:16px;font-weight:600;color:var(--text-color)}.button-group[data-v-2386a159]{display:flex;gap:var(--spacing-xs)}.detail-info[data-v-2386a159]{display:flex;flex-direction:column;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg);font-size:13px}.image-container[data-v-2386a159]{display:flex;justify-content:center;align-items:center;min-height:300px;overflow:auto}.zoomable-image[data-v-2386a159]{max-width:100%;cursor:grab}.zoomable-image[data-v-2386a159]:active{cursor:grabbing}.submission-card[data-v-2386a159]{background:var(--white);border:1px solid var(--border-color);margin-bottom:var(--spacing-md)}.card-header[data-v-2386a159]{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-color);border-bottom:1px solid var(--border-color)}.card-status[data-v-2386a159]{font-weight:600;color:var(--primary-color);font-size:13px}.card-time[data-v-2386a159]{font-size:12px;color:var(--text-secondary)}.card-body[data-v-2386a159]{padding:var(--spacing-md)}.card-row[data-v-2386a159]{display:flex;margin-bottom:var(--spacing-sm);font-size:13px}.card-label[data-v-2386a159]{color:var(--text-secondary);min-width:70px}.card-images[data-v-2386a159]{display:flex;gap:var(--spacing-sm);margin-top:var(--spacing-md)}.card-thumb[data-v-2386a159]{width:80px;height:80px;object-fit:cover;border:1px solid var(--border-color);cursor:pointer}.card-thumb[data-v-2386a159]:hover{opacity:.8}.card-actions[data-v-2386a159]{display:flex;gap:var(--spacing-sm);padding:var(--spacing-md);border-top:1px solid var(--border-color)}@media (max-width: 768px){.table-wrapper[data-v-2386a159]{display:none}.card-list[data-v-2386a159]{display:block;margin-bottom:var(--spacing-lg)}.filter-grid[data-v-2386a159]{grid-template-columns:1fr}.ghost-button[data-v-2386a159]{flex:1;margin-right:0}}.admin-submissions[data-v-e48a5d65]{max-width:1600px;margin:0 auto}.filter-grid[data-v-e48a5d65]{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:var(--spacing-sm);margin-bottom:var(--spacing-lg);align-items:center}.date-group[data-v-e48a5d65]{display:flex;align-items:center;gap:4px;grid-column:span 2}.date-separator[data-v-e48a5d65]{color:var(--text-secondary)}.header-left-group[data-v-e48a5d65]{display:flex;align-items:center;gap:var(--spacing-md)}.filter-toggle[data-v-e48a5d65]{display:none;padding:4px 10px;border:1px solid var(--border-color);background:var(--white);border-radius:16px;font-size:13px;color:var(--primary-color);cursor:pointer}.filter-toggle .icon[data-v-e48a5d65]{font-size:12px;margin-right:2px}@media (max-width: 768px){.filter-toggle[data-v-e48a5d65]{display:inline-flex;align-items:center}.filter-grid[data-v-e48a5d65]{grid-template-columns:1fr 1fr;gap:var(--spacing-xs);background:var(--background);padding:var(--spacing-sm);border-radius:8px;margin-top:var(--spacing-sm)}.date-group[data-v-e48a5d65],.search-btn[data-v-e48a5d65],.input[placeholder=微信ID][data-v-e48a5d65]{grid-column:1 / -1}}.submission-grid[data-v-e48a5d65]{display:grid;grid-template-columns:repeat(auto-fill,minmax(450px,1fr));gap:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.submission-card[data-v-e48a5d65]{background:var(--white);border:1px solid var(--border-color);padding:var(--spacing-lg);display:flex;flex-direction:column;min-height:0}.submission-images[data-v-e48a5d65]{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.image-zoom-container[data-v-e48a5d65]{position:relative;overflow:hidden;border:1px solid var(--border-color)}.submission-img[data-v-e48a5d65]{width:100%;display:block}.zoom-lens[data-v-e48a5d65]{position:absolute;border:2px solid var(--primary-color);background:#10b9814d;pointer-events:none;z-index:10}.zoom-viewer[data-v-e48a5d65]{position:fixed;width:400px;height:400px;border:2px solid var(--primary-color);background:var(--white);overflow:hidden;z-index:1000;pointer-events:none}.zoom-viewer-bg[data-v-e48a5d65]{width:100%;height:100%;background-repeat:no-repeat}.modal-mask[data-v-e48a5d65]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1100}.modal-content[data-v-e48a5d65]{background:var(--white);border-radius:8px;max-width:90vw;max-height:90vh;overflow:hidden;box-shadow:0 10px 30px #0003;display:flex;flex-direction:column}.image-modal[data-v-e48a5d65]{width:auto;max-width:90vw}.modal-header[data-v-e48a5d65]{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md);border-bottom:1px solid var(--border-color);flex-shrink:0}.modal-title[data-v-e48a5d65]{font-size:16px;font-weight:600;color:var(--text-color)}.image-container[data-v-e48a5d65]{padding:var(--spacing-md);overflow:auto;flex:1;display:flex;justify-content:center;align-items:center;min-height:0}.image-container .preview-image[data-v-e48a5d65]{display:block;max-width:calc(90vw - 32px);max-height:calc(90vh - 100px);width:auto;height:auto;object-fit:contain}.submission-info[data-v-e48a5d65]{margin-bottom:0;flex:1}.info-row[data-v-e48a5d65]{display:flex;padding:var(--spacing-xs) 0;font-size:13px}.info-row.special-row[data-v-e48a5d65]{background:#fff5f5;padding:6px 8px;margin:4px 0;border-left:3px solid var(--error-color)}.info-label[data-v-e48a5d65]{color:var(--text-secondary);min-width:70px;flex-shrink:0;display:flex;align-items:center;gap:4px}.info-value[data-v-e48a5d65]{color:var(--text-color);word-break:break-all}.help-button[data-v-e48a5d65]{width:16px;height:16px;border-radius:50%;border:1px solid var(--border-color);background:var(--white);color:var(--text-secondary);font-size:12px;line-height:14px;padding:0;cursor:pointer}.help-button[data-v-e48a5d65]:hover{color:var(--primary-color);border-color:var(--primary-color)}.help-note[data-v-e48a5d65]{margin:2px 0 8px 70px;font-size:12px;color:var(--text-secondary)}.submission-actions[data-v-e48a5d65]{display:flex;gap:var(--spacing-sm);margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--border-color);flex-shrink:0}.submission-actions button[data-v-e48a5d65]{flex:1}.primary-button[data-v-e48a5d65]{padding:var(--spacing-xs) var(--spacing-md);background:var(--primary-color);color:var(--white);border:none;border-radius:4px;cursor:pointer}.primary-button[data-v-e48a5d65]:hover{opacity:.9}.danger-button[data-v-e48a5d65]{padding:var(--spacing-xs) var(--spacing-md);background:var(--error-color);color:var(--white);border:none;border-radius:4px;cursor:pointer}.danger-button[data-v-e48a5d65]:hover{opacity:.9}.warning-button[data-v-e48a5d65]{padding:var(--spacing-xs) var(--spacing-md);background:var(--warning-color, #f59e0b);color:var(--white);border:none;border-radius:4px;cursor:pointer}.warning-button[data-v-e48a5d65]:hover{opacity:.9}.ghost-button[data-v-e48a5d65]{padding:var(--spacing-xs) var(--spacing-md);background:transparent;color:var(--primary-color);border:1px solid var(--primary-color);border-radius:4px;cursor:pointer}.mark[data-v-e48a5d65]{background:#fef3cd;color:var(--text-color);font-weight:600}.status-approved[data-v-e48a5d65]{color:var(--success-color);font-weight:600}.status-rejected[data-v-e48a5d65]{color:var(--error-color);font-weight:600}.status-pending[data-v-e48a5d65]{color:var(--text-secondary)}.pagination[data-v-e48a5d65]{display:flex;justify-content:center;align-items:center;gap:var(--spacing-md);flex-wrap:wrap}.load-more[data-v-e48a5d65]{display:flex;justify-content:center;margin:var(--spacing-lg) 0}.page-size-select[data-v-e48a5d65]{width:120px}.ghost-button[data-v-e48a5d65]{padding:var(--spacing-xs) var(--spacing-md);background:transparent;color:var(--primary-color);border:1px solid var(--primary-color)}.ghost-button[data-v-e48a5d65]:hover:not(:disabled){background:var(--primary-color);color:var(--white)}.danger-button[data-v-e48a5d65]{padding:var(--spacing-xs) var(--spacing-md);background:transparent;color:var(--error-color);border:1px solid var(--error-color)}.danger-button[data-v-e48a5d65]:hover:not(:disabled){background:var(--error-color);color:var(--white)}.gallery-list[data-v-e48a5d65]{display:flex;flex-direction:column;gap:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.image-item[data-v-e48a5d65]{display:grid;grid-template-columns:1fr auto auto;gap:var(--spacing-lg);padding:var(--spacing-lg);background:var(--white);border:1px solid var(--border-color);border-radius:8px;align-items:start}.image-meta[data-v-e48a5d65]{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-sm) var(--spacing-lg);font-size:14px;color:var(--text-color)}.image-meta>div[data-v-e48a5d65]{display:flex;gap:4px}.image-pair[data-v-e48a5d65]{display:flex;gap:var(--spacing-md);flex-shrink:0}.preview-image[data-v-e48a5d65]{width:240px;height:240px;object-fit:contain;background:var(--bg-color);border:1px solid var(--border-color);cursor:pointer;border-radius:4px;transition:all .2s}.preview-image[data-v-e48a5d65]:hover{opacity:.85;transform:scale(1.02)}.image-actions[data-v-e48a5d65]{display:flex;flex-direction:column;gap:var(--spacing-sm);min-width:100px;flex-shrink:0}.image-actions button[data-v-e48a5d65]{width:100%;white-space:nowrap}.special-text[data-v-e48a5d65]{color:var(--error-color);font-weight:600}@media (max-width: 768px){.submission-grid[data-v-e48a5d65],.filter-grid[data-v-e48a5d65]{grid-template-columns:1fr}.image-item[data-v-e48a5d65]{grid-template-columns:1fr;gap:var(--spacing-md)}.image-meta[data-v-e48a5d65]{grid-template-columns:1fr}.image-pair[data-v-e48a5d65]{justify-content:center}.preview-image[data-v-e48a5d65]{width:160px;height:160px}}.header-row[data-v-e48a5d65]{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md)}.view-mode-switch[data-v-e48a5d65]{display:flex;gap:4px;background:var(--background);border-radius:4px;padding:2px}.mode-button[data-v-e48a5d65]{padding:var(--spacing-xs) var(--spacing-md);background:transparent;color:var(--text-secondary);border:none;border-radius:4px;cursor:pointer;transition:all .2s}.mode-button[data-v-e48a5d65]:hover{background:var(--card-background)}.mode-button.active[data-v-e48a5d65]{background:var(--primary-color);color:var(--white)}.table-container[data-v-e48a5d65]{overflow-x:auto;margin:var(--spacing-lg) 0}.data-table[data-v-e48a5d65]{width:100%;border-collapse:collapse;background:var(--card-background)}.data-table th[data-v-e48a5d65],.data-table td[data-v-e48a5d65]{padding:var(--spacing-sm);text-align:left;border-bottom:1px solid var(--border-color)}.data-table th[data-v-e48a5d65]{background:var(--background);font-weight:600;color:var(--text-color);white-space:nowrap}.data-table tbody tr[data-v-e48a5d65]:hover{background:var(--background)}.image-cell[data-v-e48a5d65]{width:100px}.table-images[data-v-e48a5d65]{display:flex;gap:4px}.table-thumb[data-v-e48a5d65]{width:40px;height:40px;object-fit:cover;border-radius:4px;cursor:pointer;transition:transform .2s}.table-thumb[data-v-e48a5d65]:hover{transform:scale(1.1)}.action-cell[data-v-e48a5d65]{white-space:nowrap}.table-action-btn[data-v-e48a5d65]{padding:4px 8px;margin:0 2px;font-size:12px;border-radius:4px;cursor:pointer;border:none;transition:all .2s}.table-action-btn.primary[data-v-e48a5d65]{background:var(--primary-color);color:var(--white)}.table-action-btn.primary[data-v-e48a5d65]:hover{opacity:.8}.table-action-btn.danger[data-v-e48a5d65]{background:var(--error-color);color:var(--white)}.table-action-btn.danger[data-v-e48a5d65]:hover{opacity:.8}.table-action-btn.warning[data-v-e48a5d65]{background:var(--warning-color, #f59e0b);color:var(--white)}.table-action-btn.warning[data-v-e48a5d65]:hover{opacity:.8}.table-action-btn.ghost[data-v-e48a5d65]{background:transparent;color:var(--primary-color);border:1px solid var(--primary-color)}.table-action-btn.ghost[data-v-e48a5d65]:hover{background:var(--primary-color);color:var(--white)}.special-cell[data-v-e48a5d65]{color:var(--error-color);font-weight:600}.admin-all-submissions[data-v-f0a21e25]{max-width:1600px;margin:0 auto}.filter-grid[data-v-f0a21e25]{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:var(--spacing-sm);margin-bottom:var(--spacing-lg);align-items:center}.date-group[data-v-f0a21e25]{display:flex;align-items:center;gap:4px;grid-column:span 2}.date-separator[data-v-f0a21e25]{color:var(--text-secondary)}.header-left-group[data-v-f0a21e25]{display:flex;align-items:center;gap:var(--spacing-md)}.filter-toggle[data-v-f0a21e25]{display:none;padding:4px 10px;border:1px solid var(--border-color);background:var(--white);border-radius:16px;font-size:13px;color:var(--primary-color);cursor:pointer}.filter-toggle .icon[data-v-f0a21e25]{font-size:12px;margin-right:2px}@media (max-width: 768px){.filter-toggle[data-v-f0a21e25]{display:inline-flex;align-items:center}.filter-grid[data-v-f0a21e25]{grid-template-columns:1fr 1fr;gap:var(--spacing-xs);background:var(--background);padding:var(--spacing-sm);border-radius:8px;margin-top:var(--spacing-sm)}.date-group[data-v-f0a21e25],.search-btn[data-v-f0a21e25],.input[placeholder=微信ID][data-v-f0a21e25]{grid-column:1 / -1}}.submission-grid[data-v-f0a21e25]{display:grid;grid-template-columns:repeat(auto-fill,minmax(450px,1fr));gap:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.submission-card[data-v-f0a21e25]{background:var(--white);border:1px solid var(--border-color);padding:var(--spacing-lg);display:flex;flex-direction:column;min-height:0}.submission-images[data-v-f0a21e25]{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.image-zoom-container[data-v-f0a21e25]{position:relative;overflow:hidden;border:1px solid var(--border-color)}.submission-img[data-v-f0a21e25]{width:100%;display:block}.zoom-lens[data-v-f0a21e25]{position:absolute;border:2px solid var(--primary-color);background:#10b9814d;pointer-events:none;z-index:10}.zoom-viewer[data-v-f0a21e25]{position:fixed;width:400px;height:400px;border:2px solid var(--primary-color);background:var(--white);overflow:hidden;z-index:1000;pointer-events:none}.zoom-viewer-bg[data-v-f0a21e25]{width:100%;height:100%;background-repeat:no-repeat}.modal-mask[data-v-f0a21e25]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1100}.modal-content[data-v-f0a21e25]{background:var(--white);border-radius:8px;max-width:90vw;max-height:90vh;overflow:hidden;box-shadow:0 10px 30px #0003;display:flex;flex-direction:column}.image-modal[data-v-f0a21e25]{width:auto;max-width:90vw}.modal-header[data-v-f0a21e25]{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md);border-bottom:1px solid var(--border-color);flex-shrink:0}.modal-title[data-v-f0a21e25]{font-size:16px;font-weight:600;color:var(--text-color)}.image-container[data-v-f0a21e25]{padding:var(--spacing-md);overflow:auto;flex:1;display:flex;justify-content:center;align-items:center;min-height:0}.image-container .preview-image[data-v-f0a21e25]{display:block;max-width:calc(90vw - 32px);max-height:calc(90vh - 100px);width:auto;height:auto;object-fit:contain}.submission-info[data-v-f0a21e25]{margin-bottom:0;flex:1}.submission-actions[data-v-f0a21e25]{display:flex;gap:var(--spacing-sm);margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--border-color);flex-shrink:0}.submission-actions button[data-v-f0a21e25]{flex:1}.primary-button[data-v-f0a21e25]{padding:var(--spacing-xs) var(--spacing-md);background:var(--primary-color);color:var(--white);border:none;border-radius:4px;cursor:pointer}.primary-button[data-v-f0a21e25]:hover{opacity:.9}.danger-button[data-v-f0a21e25]{padding:var(--spacing-xs) var(--spacing-md);background:var(--error-color);color:var(--white);border:none;border-radius:4px;cursor:pointer}.danger-button[data-v-f0a21e25]:hover{opacity:.9}.ghost-button[data-v-f0a21e25]{padding:var(--spacing-xs) var(--spacing-md);background:transparent;color:var(--primary-color);border:1px solid var(--primary-color);border-radius:4px;cursor:pointer}.ghost-button[data-v-f0a21e25]:hover{background:var(--primary-color);color:var(--white)}.warning-button[data-v-f0a21e25]{padding:var(--spacing-xs) var(--spacing-md);background:var(--warning-color, #f59e0b);color:var(--white);border:none;border-radius:4px;cursor:pointer}.warning-button[data-v-f0a21e25]:hover{opacity:.9}.info-row[data-v-f0a21e25]{display:flex;padding:var(--spacing-xs) 0;font-size:13px}.info-row.special-row[data-v-f0a21e25]{background:#fff5f5;padding:6px 8px;margin:4px 0;border-left:3px solid var(--error-color)}.info-label[data-v-f0a21e25]{color:var(--text-secondary);min-width:70px;flex-shrink:0;display:flex;align-items:center;gap:4px}.info-value[data-v-f0a21e25]{color:var(--text-color);word-break:break-all}.help-button[data-v-f0a21e25]{width:16px;height:16px;border-radius:50%;border:1px solid var(--border-color);background:var(--white);color:var(--text-secondary);font-size:12px;line-height:14px;padding:0;cursor:pointer}.help-button[data-v-f0a21e25]:hover{color:var(--primary-color);border-color:var(--primary-color)}.help-note[data-v-f0a21e25]{margin:2px 0 8px 70px;font-size:12px;color:var(--text-secondary)}.mark[data-v-f0a21e25]{background:#fef3cd;color:var(--text-color);font-weight:600}.status-approved[data-v-f0a21e25]{color:var(--success-color);font-weight:600}.status-rejected[data-v-f0a21e25]{color:var(--error-color);font-weight:600}.status-pending[data-v-f0a21e25]{color:var(--text-secondary)}.pagination[data-v-f0a21e25]{display:flex;justify-content:center;align-items:center;gap:var(--spacing-md);flex-wrap:wrap}.load-more[data-v-f0a21e25]{display:flex;justify-content:center;margin:var(--spacing-lg) 0}.page-size-select[data-v-f0a21e25]{width:120px}.ghost-button[data-v-f0a21e25]{padding:var(--spacing-xs) var(--spacing-md);background:transparent;color:var(--primary-color);border:1px solid var(--primary-color)}.ghost-button[data-v-f0a21e25]:hover:not(:disabled){background:var(--primary-color);color:var(--white)}.gallery-list[data-v-f0a21e25]{display:flex;flex-direction:column;gap:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.image-item[data-v-f0a21e25]{display:grid;grid-template-columns:1fr auto auto;gap:var(--spacing-lg);padding:var(--spacing-lg);background:var(--white);border:1px solid var(--border-color);border-radius:8px;align-items:start}.image-meta[data-v-f0a21e25]{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-sm) var(--spacing-lg);font-size:14px;color:var(--text-color)}.image-meta>div[data-v-f0a21e25]{display:flex;gap:4px}.image-pair[data-v-f0a21e25]{display:flex;gap:var(--spacing-md);flex-shrink:0}.preview-image[data-v-f0a21e25]{width:240px;height:240px;object-fit:contain;background:var(--bg-color);border:1px solid var(--border-color);cursor:pointer;border-radius:4px;transition:all .2s}.preview-image[data-v-f0a21e25]:hover{opacity:.85;transform:scale(1.02)}.image-actions[data-v-f0a21e25]{display:flex;flex-direction:column;gap:var(--spacing-sm);min-width:100px;flex-shrink:0}.image-actions button[data-v-f0a21e25]{width:100%;white-space:nowrap}.special-text[data-v-f0a21e25]{color:var(--error-color);font-weight:600}@media (max-width: 768px){.submission-grid[data-v-f0a21e25],.filter-grid[data-v-f0a21e25]{grid-template-columns:1fr}.image-item[data-v-f0a21e25]{grid-template-columns:1fr;gap:var(--spacing-md)}.image-meta[data-v-f0a21e25]{grid-template-columns:1fr}.image-pair[data-v-f0a21e25]{justify-content:center}.preview-image[data-v-f0a21e25]{width:160px;height:160px}}.header-row[data-v-f0a21e25]{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md)}.view-mode-switch[data-v-f0a21e25]{display:flex;gap:4px;background:var(--background);border-radius:4px;padding:2px}.mode-button[data-v-f0a21e25]{padding:var(--spacing-xs) var(--spacing-md);background:transparent;color:var(--text-secondary);border:none;border-radius:4px;cursor:pointer;transition:all .2s}.mode-button[data-v-f0a21e25]:hover{background:var(--card-background)}.mode-button.active[data-v-f0a21e25]{background:var(--primary-color);color:var(--white)}.table-container[data-v-f0a21e25]{overflow-x:auto;margin:var(--spacing-lg) 0}.data-table[data-v-f0a21e25]{width:100%;border-collapse:collapse;background:var(--card-background)}.data-table th[data-v-f0a21e25],.data-table td[data-v-f0a21e25]{padding:var(--spacing-sm);text-align:left;border-bottom:1px solid var(--border-color)}.data-table th[data-v-f0a21e25]{background:var(--background);font-weight:600;color:var(--text-color);white-space:nowrap}.data-table tbody tr[data-v-f0a21e25]:hover{background:var(--background)}.image-cell[data-v-f0a21e25]{width:100px}.table-images[data-v-f0a21e25]{display:flex;gap:4px}.table-thumb[data-v-f0a21e25]{width:40px;height:40px;object-fit:cover;border-radius:4px;cursor:pointer;transition:transform .2s}.table-thumb[data-v-f0a21e25]:hover{transform:scale(1.1)}.action-cell[data-v-f0a21e25]{white-space:nowrap}.table-action-btn[data-v-f0a21e25]{padding:4px 8px;margin:0 2px;font-size:12px;border-radius:4px;cursor:pointer;border:none;transition:all .2s}.table-action-btn.primary[data-v-f0a21e25]{background:var(--primary-color);color:var(--white)}.table-action-btn.primary[data-v-f0a21e25]:hover{opacity:.8}.table-action-btn.danger[data-v-f0a21e25]{background:var(--error-color);color:var(--white)}.table-action-btn.danger[data-v-f0a21e25]:hover{opacity:.8}.table-action-btn.warning[data-v-f0a21e25]{background:var(--warning-color, #f59e0b);color:var(--white)}.table-action-btn.warning[data-v-f0a21e25]:hover{opacity:.8}.table-action-btn.ghost[data-v-f0a21e25]{background:transparent;color:var(--primary-color);border:1px solid var(--primary-color)}.table-action-btn.ghost[data-v-f0a21e25]:hover{background:var(--primary-color);color:var(--white)}.special-cell[data-v-f0a21e25]{color:var(--error-color);font-weight:600}.admin-users[data-v-9eae19d8]{max-width:1200px;margin:0 auto}.table-wrapper[data-v-9eae19d8]{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.form-grid[data-v-9eae19d8]{display:flex;flex-direction:column;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg);padding:var(--spacing-md);background:var(--background);border-radius:8px}.form-group[data-v-9eae19d8]{display:flex;gap:var(--spacing-sm);width:100%}.form-group .input[data-v-9eae19d8]{flex:1}.create-btn[data-v-9eae19d8]{width:auto;min-width:120px;align-self:flex-start}.success-text[data-v-9eae19d8]{color:var(--success-color);font-size:14px;margin-top:4px}.error-text[data-v-9eae19d8]{color:var(--error-color);font-size:14px;margin-top:4px}@media (max-width: 768px){.form-group[data-v-9eae19d8]{flex-direction:column}.create-btn[data-v-9eae19d8]{width:100%}.data-table thead[data-v-9eae19d8]{display:none}.data-table[data-v-9eae19d8],.data-table tbody[data-v-9eae19d8],.data-table tr[data-v-9eae19d8],.data-table td[data-v-9eae19d8]{display:block;width:100%}.data-table tr[data-v-9eae19d8]{margin-bottom:var(--spacing-md);background:var(--white);border:1px solid var(--border-color);border-radius:8px;padding:var(--spacing-sm)}.data-table td[data-v-9eae19d8]{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-sm) 0;border-bottom:1px solid var(--border-color);text-align:right}.data-table td[data-v-9eae19d8]:last-child{border-bottom:none}.data-table td[data-v-9eae19d8]:before{content:attr(data-label);font-weight:600;margin-right:var(--spacing-md);text-align:left;color:var(--text-secondary)}}.pagination[data-v-9eae19d8]{display:flex;justify-content:center;align-items:center;gap:var(--spacing-md);flex-wrap:wrap;margin-top:var(--spacing-lg)}.page-size-select[data-v-9eae19d8]{width:120px}.team-select[data-v-9eae19d8]{min-width:120px;font-size:13px}.admin-export[data-v-8a1e37fe]{max-width:800px;margin:0 auto}.section-title[data-v-8a1e37fe]{font-size:18px;font-weight:600;color:var(--text-color);margin-bottom:var(--spacing-lg)}.filter-grid[data-v-8a1e37fe]{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--spacing-sm)}@media (max-width: 768px){.filter-grid[data-v-8a1e37fe]{grid-template-columns:1fr}}.admin-import[data-v-f397ee83]{max-width:800px;margin:0 auto}.section-title[data-v-f397ee83]{font-size:18px;font-weight:600;color:var(--text-color);margin-bottom:var(--spacing-lg)}.form-grid[data-v-f397ee83]{display:flex;flex-direction:column;gap:var(--spacing-md)}.textarea[data-v-f397ee83]{width:100%;min-height:200px;padding:var(--spacing-sm);border:1px solid var(--border-color);background:var(--white);font-family:inherit;font-size:13px;resize:vertical;outline:none}.textarea[data-v-f397ee83]:focus{border-color:var(--primary-color)}.admin-reports[data-v-a893ef5e]{max-width:1200px;margin:0 auto}.card[data-v-a893ef5e]{margin-bottom:var(--spacing-lg)}.section-title[data-v-a893ef5e]{font-size:18px;font-weight:600;color:var(--text-color);margin-bottom:var(--spacing-lg)}.tabs[data-v-a893ef5e]{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg)}.tab-button[data-v-a893ef5e]{padding:var(--spacing-xs) var(--spacing-md);background:var(--bg-color);border:1px solid var(--border-color);color:var(--text-secondary);border-radius:4px;cursor:pointer;transition:all .2s}.tab-button[data-v-a893ef5e]:hover{border-color:var(--primary-color);color:var(--primary-color)}.tab-button.active[data-v-a893ef5e]{background:var(--primary-color);border-color:var(--primary-color);color:var(--white)}.sub-title[data-v-a893ef5e]{font-size:16px;font-weight:600;color:var(--text-color);margin-bottom:var(--spacing-md)}.filter-grid[data-v-a893ef5e]{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--spacing-sm);margin-bottom:var(--spacing-lg)}.overview-grid[data-v-a893ef5e]{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.overview-item[data-v-a893ef5e]{padding:var(--spacing-md);background:var(--bg-color);border:1px solid var(--border-color);text-align:center}.overview-label[data-v-a893ef5e]{font-size:12px;color:var(--text-secondary);margin-bottom:var(--spacing-xs)}.overview-value[data-v-a893ef5e]{font-size:24px;font-weight:600;color:var(--primary-color)}.table-wrapper[data-v-a893ef5e]{overflow-x:auto}.data-table[data-v-a893ef5e]{width:100%;border-collapse:collapse;font-size:13px}.data-table th[data-v-a893ef5e],.data-table td[data-v-a893ef5e]{padding:var(--spacing-sm);text-align:left;border-bottom:1px solid var(--border-color)}.data-table th[data-v-a893ef5e]{background:var(--bg-color);font-weight:600;color:var(--text-secondary)}.data-table tbody tr[data-v-a893ef5e]:hover{background:var(--bg-color)}.pagination[data-v-a893ef5e]{display:flex;justify-content:center;align-items:center;gap:var(--spacing-md);flex-wrap:wrap;margin-top:var(--spacing-md)}.page-size-select[data-v-a893ef5e]{width:120px}.table-thumb[data-v-a893ef5e]{width:40px;height:40px;object-fit:cover;border-radius:4px;cursor:pointer}.link-button[data-v-a893ef5e]{background:transparent;border:none;color:var(--primary-color);padding:0;cursor:pointer}.modal-mask[data-v-a893ef5e]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content[data-v-a893ef5e]{background:var(--white);border-radius:8px;max-width:90vw;max-height:90vh;overflow:hidden;box-shadow:0 10px 30px #0003}.image-modal[data-v-a893ef5e]{width:min(900px,90vw)}.modal-header[data-v-a893ef5e]{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md);border-bottom:1px solid var(--border-color)}.modal-title[data-v-a893ef5e]{font-size:16px;font-weight:600;color:var(--text-color)}.image-container[data-v-a893ef5e]{padding:var(--spacing-md);display:flex;justify-content:center;align-items:center}.preview-image[data-v-a893ef5e]{max-width:100%;max-height:70vh;object-fit:contain}.status-approved[data-v-a893ef5e]{color:var(--success-color);font-weight:600}.status-rejected[data-v-a893ef5e]{color:var(--error-color);font-weight:600}.status-pending[data-v-a893ef5e]{color:var(--text-secondary)}@media (max-width: 768px){.filter-grid[data-v-a893ef5e]{grid-template-columns:1fr}.overview-grid[data-v-a893ef5e]{grid-template-columns:repeat(2,1fr)}.overview-value[data-v-a893ef5e]{font-size:20px}.data-table[data-v-a893ef5e]{font-size:12px}.data-table th[data-v-a893ef5e],.data-table td[data-v-a893ef5e]{padding:var(--spacing-xs)}}.admin-channels[data-v-ad6ead7b]{max-width:800px;margin:0 auto}.section-title[data-v-ad6ead7b]{font-size:18px;font-weight:600;color:var(--text-color);margin-bottom:var(--spacing-lg)}.form-grid[data-v-ad6ead7b]{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:var(--spacing-sm);margin-bottom:var(--spacing-lg)}*{margin:0;padding:0;box-sizing:border-box}:root{--primary-color: #10b981;--primary-hover: #059669;--border-color: #ddd;--text-color: #333;--text-secondary: #666;--bg-color: #f5f5f5;--error-color: #d32f2f;--success-color: #388e3c;--white: #fff;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 12px;--spacing-lg: 16px}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Arial,sans-serif;font-size:14px;line-height:1.5;color:var(--text-color);background:var(--bg-color)}input,select,button{font-family:inherit;font-size:inherit}button{cursor:pointer;border:none;outline:none}button:disabled{cursor:not-allowed;opacity:.6}.input{width:100%;padding:var(--spacing-sm);border:1px solid var(--border-color);background:var(--white);outline:none}.input:focus{border-color:var(--primary-color)}.primary-button{width:100%;padding:var(--spacing-md) var(--spacing-lg);background:var(--primary-color);color:var(--white)}.primary-button:hover:not(:disabled){background:var(--primary-hover)}.error-text{color:var(--error-color);font-size:13px}.success-text{color:var(--success-color);font-size:13px}.card{background:var(--white);border:1px solid var(--border-color);padding:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.section-title{font-size:18px;font-weight:600;margin-bottom:var(--spacing-lg);color:var(--text-color)}.sub-title{font-size:16px;font-weight:600;margin-bottom:var(--spacing-md);color:var(--text-color)}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.ghost-button{padding:var(--spacing-xs) var(--spacing-md);background:transparent;color:var(--primary-color);border:1px solid var(--primary-color)}.ghost-button:hover:not(:disabled){background:var(--primary-color);color:var(--white)}.table-wrapper{width:100%;overflow-x:auto;margin-bottom:var(--spacing-lg)}.data-table{width:100%;border-collapse:collapse;background:var(--white)}.data-table th,.data-table td{padding:var(--spacing-md);text-align:left;border-bottom:1px solid var(--border-color)}.data-table th{font-weight:600;background:var(--bg-color);color:var(--text-color)}.data-table tbody tr:hover{background:#f9fafb}.pagination{display:flex;align-items:center;justify-content:center;gap:var(--spacing-md);flex-wrap:wrap}.page-info{color:var(--text-secondary);font-size:13px}.app-root{display:flex;flex-direction:column;min-height:100vh}.app-header{display:flex;align-items:center;padding:0 var(--spacing-lg);background:var(--white);border-bottom:1px solid var(--border-color);height:64px;position:sticky;top:0;z-index:100;justify-content:space-between}.header-brand{display:flex;align-items:center}.app-title{font-size:20px;font-weight:600;color:var(--primary-color);white-space:nowrap}.menu-toggle{display:none;background:none;border:none;cursor:pointer;padding:8px;flex-direction:column;gap:5px}.menu-line{display:block;width:24px;height:2px;background-color:var(--text-color);transition:all .3s ease}.header-content{display:flex;align-items:center;flex:1;justify-content:space-between;margin-left:var(--spacing-lg)}.app-nav{display:flex;align-items:center;gap:var(--spacing-xs);flex-wrap:nowrap}.nav-link{padding:var(--spacing-sm) var(--spacing-md);color:var(--text-secondary);text-decoration:none;font-size:14px;font-weight:500;border-radius:4px;white-space:nowrap;transition:all .2s;border-bottom:none}.nav-link:hover,.nav-link.router-link-active{color:var(--primary-color);background-color:#10b9811a}.app-user{display:flex;align-items:center;gap:var(--spacing-md);flex-shrink:0}.app-user-name{font-size:14px;color:var(--text-color);font-weight:500}.app-button{padding:var(--spacing-xs) var(--spacing-md);background:var(--bg-color);border:1px solid var(--border-color);font-size:13px;color:var(--text-color);border-radius:4px}.app-button:hover{background:var(--border-color)}.app-main{flex:1;padding:var(--spacing-lg);max-width:100%;overflow-x:hidden}@media (max-width: 1024px){.app-header{flex-direction:column;height:auto;min-height:60px;padding:0;align-items:stretch}.header-brand{height:60px;padding:0 var(--spacing-lg);justify-content:space-between;width:100%}.menu-toggle{display:flex}.header-content{display:none;flex-direction:column;margin:0;width:100%;border-top:1px solid var(--border-color);background:var(--white);padding-bottom:var(--spacing-md)}.header-content.is-open{display:flex;animation:slideDown .3s ease-out}.app-nav{flex-direction:column;align-items:stretch;width:100%;gap:0;padding:var(--spacing-sm) 0}.nav-link{width:100%;padding:var(--spacing-md) var(--spacing-lg);border-radius:0}.nav-link:hover,.nav-link.router-link-active{background-color:var(--bg-color)}.app-user{flex-direction:row;justify-content:space-between;width:100%;padding:var(--spacing-md) var(--spacing-lg);border-top:1px solid var(--bg-color);margin-top:var(--spacing-sm)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}
