*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:#f4f4f5;color:#18181b}button{cursor:pointer;border:none;outline:none}input,textarea{font-family:inherit;outline:none}.page[data-v-ad1f7f38]{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;background:linear-gradient(135deg,#667eea,#764ba2)}.card[data-v-ad1f7f38]{background:#fff;border-radius:16px;padding:40px;width:100%;max-width:560px;box-shadow:0 20px 60px #0003}.hero[data-v-ad1f7f38]{text-align:center;margin-bottom:32px}.icon[data-v-ad1f7f38]{font-size:48px;display:block;margin-bottom:12px}h1[data-v-ad1f7f38]{font-size:28px;font-weight:700;margin-bottom:8px;color:#18181b}.hero p[data-v-ad1f7f38]{color:#71717a;font-size:15px}.form[data-v-ad1f7f38]{display:flex;flex-direction:column;gap:20px}.field[data-v-ad1f7f38]{display:flex;flex-direction:column;gap:6px}label[data-v-ad1f7f38]{font-weight:600;font-size:14px;color:#3f3f46}input[type=text][data-v-ad1f7f38]{border:1.5px solid #d4d4d8;border-radius:8px;padding:10px 14px;font-size:15px;transition:border-color .15s}input[type=text][data-v-ad1f7f38]:focus{border-color:#667eea}input[type=text][data-v-ad1f7f38]:disabled{background:#f4f4f5;color:#a1a1aa}.drop-zone[data-v-ad1f7f38]{border:2px dashed #d4d4d8;border-radius:12px;padding:32px 20px;text-align:center;cursor:pointer;transition:border-color .15s,background .15s;background:#fafafa}.drop-zone[data-v-ad1f7f38]:hover:not(.disabled){border-color:#667eea;background:#f0f0ff}.drop-zone.dragging[data-v-ad1f7f38]{border-color:#667eea;background:#eeecff}.drop-zone.disabled[data-v-ad1f7f38]{cursor:default;opacity:.7}.drop-icon[data-v-ad1f7f38]{font-size:36px;display:block;margin-bottom:10px}.drop-zone p[data-v-ad1f7f38]{color:#52525b;font-size:15px}.hint[data-v-ad1f7f38]{font-size:13px!important;color:#a1a1aa!important;margin-top:6px}.file-count[data-v-ad1f7f38]{font-weight:600;font-size:15px;margin-bottom:12px}.file-list[data-v-ad1f7f38]{list-style:none;max-height:180px;overflow-y:auto;text-align:left;border:1px solid #e4e4e7;border-radius:8px;margin-bottom:12px}.file-list li[data-v-ad1f7f38]{display:flex;align-items:center;gap:10px;padding:8px 12px;border-bottom:1px solid #f4f4f5;font-size:13px}.file-list li[data-v-ad1f7f38]:last-child{border-bottom:none}.thumb[data-v-ad1f7f38]{width:36px;height:36px;object-fit:cover;border-radius:4px;flex-shrink:0}.size[data-v-ad1f7f38]{margin-left:auto;color:#a1a1aa;flex-shrink:0}.progress-wrap[data-v-ad1f7f38]{display:flex;align-items:center;gap:10px}.progress-wrap span[data-v-ad1f7f38]{font-size:13px;color:#52525b;min-width:36px}.progress-bar[data-v-ad1f7f38]{flex:1;height:8px;background:linear-gradient(90deg,#667eea,#764ba2);border-radius:4px;transition:width .2s}.progress-wrap[data-v-ad1f7f38]{position:relative;display:flex;align-items:center;gap:10px;background:#e4e4e7;border-radius:4px;height:8px;overflow:hidden}.progress-wrap span[data-v-ad1f7f38]{display:none}.error-box[data-v-ad1f7f38]{background:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:12px 16px;font-size:14px;color:#b91c1c}.error-box p+p[data-v-ad1f7f38]{margin-top:4px}.success-box[data-v-ad1f7f38]{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;padding:16px;text-align:center;font-size:15px;color:#15803d;display:flex;flex-direction:column;gap:12px}.btn-primary[data-v-ad1f7f38]{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;font-size:16px;font-weight:600;padding:12px;border-radius:10px;transition:opacity .15s}.btn-primary[data-v-ad1f7f38]:disabled{opacity:.5;cursor:not-allowed}.btn-ghost[data-v-ad1f7f38]{background:transparent;color:#667eea;font-size:14px;font-weight:600;padding:6px 12px;border-radius:6px;border:1.5px solid #667eea;transition:background .15s}.btn-ghost[data-v-ad1f7f38]:hover{background:#f0f0ff}.page[data-v-145856b0]{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;background:#1e1e2e}.card[data-v-145856b0]{background:#27273a;border-radius:16px;padding:40px;width:100%;max-width:380px;box-shadow:0 20px 60px #0006}.header[data-v-145856b0]{text-align:center;margin-bottom:32px}.icon[data-v-145856b0]{font-size:40px;display:block;margin-bottom:12px}h1[data-v-145856b0]{font-size:22px;font-weight:700;color:#e4e4e7}.form[data-v-145856b0]{display:flex;flex-direction:column;gap:18px}.field[data-v-145856b0]{display:flex;flex-direction:column;gap:6px}label[data-v-145856b0]{font-size:13px;font-weight:600;color:#a1a1aa;text-transform:uppercase;letter-spacing:.05em}input[data-v-145856b0]{background:#1e1e2e;border:1.5px solid #3f3f5a;border-radius:8px;padding:10px 14px;font-size:15px;color:#e4e4e7;transition:border-color .15s}input[data-v-145856b0]:focus{border-color:#667eea}.error[data-v-145856b0]{background:#3b1a1a;border:1px solid #7f1d1d;border-radius:8px;padding:10px 14px;color:#fca5a5;font-size:14px}.btn-primary[data-v-145856b0]{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;font-size:15px;font-weight:600;padding:11px;border-radius:8px;transition:opacity .15s}.btn-primary[data-v-145856b0]:disabled{opacity:.5;cursor:not-allowed}.back-link[data-v-145856b0]{text-align:center;font-size:13px;color:#71717a;text-decoration:none;display:block}.back-link[data-v-145856b0]:hover{color:#a1a1aa}.overlay[data-v-cc236bbf]{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000f2;z-index:200;display:flex;flex-direction:column;align-items:center}.close-btn[data-v-cc236bbf]{position:absolute;top:16px;right:20px;background:#ffffff1a;color:#fff;font-size:22px;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;z-index:10;transition:background .15s}.close-btn[data-v-cc236bbf]:hover{background:#fff3}.nav-btn[data-v-cc236bbf]{position:absolute;top:50%;transform:translateY(-50%);background:#ffffff1a;color:#fff;font-size:40px;width:52px;height:52px;border-radius:50%;display:flex;align-items:center;justify-content:center;z-index:10;transition:background .15s;margin-bottom:120px}.nav-btn[data-v-cc236bbf]:hover:not(:disabled){background:#fff3}.nav-btn[data-v-cc236bbf]:disabled{opacity:.2;cursor:default}.nav-btn.prev[data-v-cc236bbf]{left:16px}.nav-btn.next[data-v-cc236bbf]{right:16px}.photo-wrap[data-v-cc236bbf]{flex:1;width:100%;display:flex;align-items:center;justify-content:center;overflow:hidden;padding-bottom:130px;padding-top:60px}.photo[data-v-cc236bbf]{max-width:100%;max-height:100%;object-fit:contain;display:block;border-radius:4px}.spinner[data-v-cc236bbf]{font-size:32px;animation:spin-cc236bbf 1s linear infinite}@keyframes spin-cc236bbf{to{transform:rotate(360deg)}}.info-bar[data-v-cc236bbf]{position:absolute;bottom:0;left:0;right:0;height:120px;background:#0f0f19f2;border-top:1px solid rgba(255,255,255,.08);display:flex;align-items:center;gap:24px;padding:0 80px 0 24px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.info-flag[data-v-cc236bbf]{flex-shrink:0}.flag-label[data-v-cc236bbf]{display:flex;align-items:center;gap:8px;cursor:pointer}.flag-label input[type=checkbox][data-v-cc236bbf]{width:18px;height:18px;cursor:pointer;accent-color:#667eea}.flag-label span[data-v-cc236bbf]{font-size:14px;color:#71717a;-webkit-user-select:none;user-select:none;transition:color .15s;white-space:nowrap}.flag-label span.flagged[data-v-cc236bbf]{color:#818cf8;font-weight:600}.info-center[data-v-cc236bbf]{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}.info-filename[data-v-cc236bbf]{font-size:13px;font-weight:600;color:#e4e4e7;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.info-uploader[data-v-cc236bbf]{font-size:12px;color:#52525b}.label-row[data-v-cc236bbf]{display:flex;gap:8px;align-items:center}.label-input[data-v-cc236bbf]{flex:1;background:#ffffff12;border:1.5px solid rgba(255,255,255,.12);border-radius:6px;padding:7px 12px;font-size:13px;color:#e4e4e7;transition:border-color .15s}.label-input[data-v-cc236bbf]:focus{border-color:#667eea;background:#ffffff1a}.label-input[data-v-cc236bbf]::placeholder{color:#52525b}.save-btn[data-v-cc236bbf]{background:#667eea;color:#fff;font-size:13px;font-weight:600;padding:7px 14px;border-radius:6px;flex-shrink:0;transition:background .15s,opacity .15s;min-width:80px}.save-btn[data-v-cc236bbf]:disabled{opacity:.6;cursor:not-allowed}.save-btn.saved[data-v-cc236bbf]{background:#16a34a}.info-counter[data-v-cc236bbf]{flex-shrink:0;font-size:13px;color:#52525b;white-space:nowrap}.layout[data-v-5c41c1a5]{display:flex;height:100vh;overflow:hidden;background:#f4f4f5}.sidebar[data-v-5c41c1a5]{width:260px;flex-shrink:0;background:#1e1e2e;display:flex;flex-direction:column;overflow-y:auto;color:#e4e4e7}.sidebar-top[data-v-5c41c1a5]{display:flex;align-items:center;justify-content:space-between;padding:20px 16px 16px;border-bottom:1px solid #2e2e42}.brand[data-v-5c41c1a5]{font-size:16px;font-weight:700;color:#e4e4e7}.btn-logout[data-v-5c41c1a5]{background:transparent;color:#71717a;font-size:18px;padding:4px;border-radius:4px;transition:color .15s}.btn-logout[data-v-5c41c1a5]:hover{color:#f87171}.sidebar-section-title[data-v-5c41c1a5]{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#52525b;padding:16px 16px 6px}.collections-nav[data-v-5c41c1a5]{display:flex;flex-direction:column;gap:2px;padding:0 8px}.collection-item[data-v-5c41c1a5]{display:flex;align-items:center;justify-content:space-between;background:transparent;color:#a1a1aa;padding:8px 10px;border-radius:6px;font-size:14px;text-align:left;transition:background .15s,color .15s;width:100%}.collection-item[data-v-5c41c1a5]:hover{background:#27273a;color:#e4e4e7}.collection-item.active[data-v-5c41c1a5]{background:#667eea20;color:#818cf8}.col-name[data-v-5c41c1a5]{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.col-delete[data-v-5c41c1a5]{opacity:0;font-size:11px;color:#71717a;padding:2px 4px;border-radius:3px;transition:opacity .15s,color .15s;flex-shrink:0}.collection-item:hover .col-delete[data-v-5c41c1a5]{opacity:1}.col-delete[data-v-5c41c1a5]:hover{color:#f87171}.no-collections[data-v-5c41c1a5]{font-size:13px;color:#52525b;padding:8px 10px;font-style:italic}.new-collection[data-v-5c41c1a5]{display:flex;gap:6px;padding:12px 8px 0}.new-collection input[data-v-5c41c1a5]{flex:1;background:#27273a;border:1.5px solid #3f3f5a;border-radius:6px;padding:7px 10px;font-size:13px;color:#e4e4e7;transition:border-color .15s}.new-collection input[data-v-5c41c1a5]:focus{border-color:#667eea}.new-collection input[data-v-5c41c1a5]::placeholder{color:#52525b}.btn-add[data-v-5c41c1a5]{background:#667eea;color:#fff;font-size:18px;width:32px;border-radius:6px;flex-shrink:0;transition:opacity .15s}.btn-add[data-v-5c41c1a5]:disabled{opacity:.4;cursor:not-allowed}.action-group[data-v-5c41c1a5]{display:flex;flex-direction:column;gap:4px;padding:0 8px}.btn-action[data-v-5c41c1a5]{background:#27273a;color:#a1a1aa;padding:8px 12px;border-radius:6px;font-size:13px;text-align:left;transition:background .15s,color .15s;display:flex;align-items:center;gap:8px}.btn-action[data-v-5c41c1a5]:hover{background:#32324a;color:#e4e4e7}.btn-action.accent[data-v-5c41c1a5]{color:#818cf8}.btn-action.accent[data-v-5c41c1a5]:hover{background:#667eea22}.badge[data-v-5c41c1a5]{margin-left:auto;background:#667eea;color:#fff;font-size:11px;font-weight:700;padding:1px 7px;border-radius:10px}.sidebar-footer[data-v-5c41c1a5]{margin-top:auto;padding:16px;border-top:1px solid #2e2e42}.footer-link[data-v-5c41c1a5]{font-size:13px;color:#52525b;text-decoration:none}.footer-link[data-v-5c41c1a5]:hover{color:#818cf8}.main[data-v-5c41c1a5]{flex:1;overflow-y:auto;display:flex;flex-direction:column}.main-header[data-v-5c41c1a5]{padding:20px 24px 12px;border-bottom:1px solid #e4e4e7;display:flex;align-items:baseline;gap:12px}.main-header h2[data-v-5c41c1a5]{font-size:20px;font-weight:700}.photo-count[data-v-5c41c1a5]{font-size:13px;color:#71717a}.loading[data-v-5c41c1a5]{flex:1;display:flex;align-items:center;justify-content:center;color:#71717a;font-size:15px}.empty-state[data-v-5c41c1a5]{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:#a1a1aa}.empty-icon[data-v-5c41c1a5]{font-size:48px}.empty-state p[data-v-5c41c1a5]{font-size:15px}.photo-grid[data-v-5c41c1a5]{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px;padding:16px 24px 24px}.photo-card[data-v-5c41c1a5]{border-radius:10px;overflow:hidden;background:#fff;box-shadow:0 1px 4px #00000014;cursor:pointer;transition:transform .15s,box-shadow .15s}.photo-card[data-v-5c41c1a5]:hover{transform:translateY(-2px);box-shadow:0 4px 16px #00000024}.photo-card.flagged[data-v-5c41c1a5]{box-shadow:0 0 0 2px #667eea,0 1px 4px #00000014}.card-img-wrap[data-v-5c41c1a5]{position:relative;aspect-ratio:1;overflow:hidden;background:#e4e4e7}.card-img-wrap img[data-v-5c41c1a5]{width:100%;height:100%;object-fit:cover;display:block;transition:transform .2s}.photo-card:hover .card-img-wrap img[data-v-5c41c1a5]{transform:scale(1.04)}.flag-badge[data-v-5c41c1a5]{position:absolute;top:6px;right:6px;background:#667eea;color:#fff;font-size:11px;font-weight:700;width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center}.card-info[data-v-5c41c1a5]{padding:8px 10px;display:flex;flex-direction:column;gap:2px}.card-label[data-v-5c41c1a5]{font-size:12px;font-weight:600;color:#18181b;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-uploader[data-v-5c41c1a5]{font-size:11px;color:#a1a1aa}.modal-backdrop[data-v-5c41c1a5]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:100}.modal[data-v-5c41c1a5]{background:#fff;border-radius:16px;width:100%;max-width:440px;overflow:hidden;box-shadow:0 20px 60px #0000004d}.modal-header[data-v-5c41c1a5]{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 0}.modal-header h3[data-v-5c41c1a5]{font-size:18px;font-weight:700}.modal-close[data-v-5c41c1a5]{background:transparent;color:#71717a;font-size:18px;padding:4px;border-radius:4px}.modal-close[data-v-5c41c1a5]:hover{color:#18181b}.modal-tabs[data-v-5c41c1a5]{display:flex;gap:0;padding:16px 24px 0;border-bottom:1px solid #e4e4e7}.modal-tabs button[data-v-5c41c1a5]{padding:8px 16px;font-size:14px;font-weight:600;color:#71717a;background:transparent;border-bottom:2px solid transparent;margin-bottom:-1px;transition:color .15s}.modal-tabs button.active[data-v-5c41c1a5]{color:#667eea;border-bottom-color:#667eea}.modal-body[data-v-5c41c1a5]{padding:20px 24px 24px;display:flex;flex-direction:column;gap:16px}.modal-hint[data-v-5c41c1a5]{font-size:14px;color:#71717a;line-height:1.5}.modal-hint code[data-v-5c41c1a5]{background:#f4f4f5;padding:1px 5px;border-radius:4px;font-size:13px}.path-input[data-v-5c41c1a5]{border:1.5px solid #d4d4d8;border-radius:8px;padding:10px 14px;font-size:14px;font-family:monospace;width:100%;transition:border-color .15s}.path-input[data-v-5c41c1a5]:focus{border-color:#667eea}.copy-status[data-v-5c41c1a5]{padding:10px 14px;border-radius:8px;font-size:14px}.copy-status.success[data-v-5c41c1a5]{background:#f0fdf4;color:#15803d;border:1px solid #bbf7d0}.copy-status.error[data-v-5c41c1a5]{background:#fef2f2;color:#b91c1c;border:1px solid #fecaca}.copy-progress[data-v-5c41c1a5]{position:relative;height:8px;background:#e4e4e7;border-radius:4px;overflow:hidden;display:flex;align-items:center}.copy-progress span[data-v-5c41c1a5]{display:none}.copy-progress-bar[data-v-5c41c1a5]{position:absolute;left:0;top:0;bottom:0;background:linear-gradient(90deg,#667eea,#764ba2);border-radius:4px;transition:width .2s}.btn-primary[data-v-5c41c1a5]{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;font-size:14px;font-weight:600;padding:10px 16px;border-radius:8px;transition:opacity .15s}.btn-primary[data-v-5c41c1a5]:disabled{opacity:.5;cursor:not-allowed}
