.sidebar[data-v-933d437f]{position:fixed;left:var(--spacing-lg);top:var(--spacing-lg);bottom:var(--spacing-lg);width:var(--sidebar-width);background-color:var(--color-bg-elevated);border-radius:var(--radius-xl);display:flex;flex-direction:column;z-index:var(--z-sticky);box-shadow:var(--shadow-lg);overflow:hidden}.sidebar-header[data-v-933d437f]{padding:var(--spacing-lg) var(--spacing-sm);display:flex;align-items:center;justify-content:center}.logo[data-v-933d437f]{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs);color:var(--color-accent)}.logo-icon[data-v-933d437f]{width:32px;height:32px}.logo-icon-wrapper[data-v-933d437f]{width:32px;height:32px;display:flex;align-items:center;justify-content:center;color:var(--color-accent)}[data-v-933d437f] .logo-icon-wrapper img{width:100%;height:100%;object-fit:contain}.logo-text[data-v-933d437f]{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);display:none}.sidebar-nav[data-v-933d437f]{flex:1;display:flex;flex-direction:column;padding:var(--spacing-sm);gap:var(--spacing-xs);overflow-y:auto}.sidebar-btn[data-v-933d437f]{width:100%;aspect-ratio:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-xs);padding:var(--spacing-sm);border-radius:var(--radius-md);color:var(--color-text-secondary);background-color:transparent;transition:all var(--transition-fast)}.sidebar-btn[data-v-933d437f]:hover{background-color:var(--color-accent-light);color:var(--color-accent)}.sidebar-btn[data-v-933d437f]:active{transform:scale(.95);background-color:var(--color-accent-lighter)}.icon[data-v-933d437f]{width:22px;height:22px;stroke-width:1.5}.sidebar-btn-label[data-v-933d437f]{font-size:10px;font-weight:var(--font-weight-medium);display:none}@media (min-width: 1400px){.sidebar[data-v-933d437f]{width:var(--sidebar-expanded-width)}.sidebar-header[data-v-933d437f]{padding:var(--spacing-xl) var(--spacing-lg)}.logo[data-v-933d437f]{flex-direction:row;gap:var(--spacing-sm)}.logo-icon[data-v-933d437f]{width:28px;height:28px}.logo-text[data-v-933d437f]{display:block;font-size:var(--font-size-lg)}.sidebar-nav[data-v-933d437f]{padding:var(--spacing-sm) var(--spacing-md)}.sidebar-btn[data-v-933d437f]{aspect-ratio:auto;flex-direction:row;justify-content:flex-start;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg)}.sidebar-btn-label[data-v-933d437f]{display:block;font-size:var(--font-size-sm)}}@media (max-width: 768px){.sidebar[data-v-933d437f]{position:fixed;left:var(--spacing-md);right:var(--spacing-md);bottom:var(--spacing-md);top:auto;width:auto;height:auto;flex-direction:row;justify-content:space-around;align-items:center;border-radius:var(--radius-xxl);border-right:none;border-top:none;background-color:#ffffffe6;backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);box-shadow:var(--shadow-xl);padding:var(--spacing-sm) var(--spacing-md);margin-bottom:env(safe-area-inset-bottom,0);z-index:1000}[data-theme=dark] .sidebar[data-v-933d437f]{background-color:#1c1c1ee6;border:1px solid var(--color-separator)}.sidebar-header[data-v-933d437f]{display:none}.sidebar-nav[data-v-933d437f]{display:contents}.sidebar-btn[data-v-933d437f]{width:auto;aspect-ratio:auto;padding:var(--spacing-xs) var(--spacing-sm);min-width:56px;height:auto;background-color:transparent!important;box-shadow:none!important;gap:2px;color:var(--color-text-secondary);border-radius:var(--radius-lg)}.sidebar-btn[data-v-933d437f]:hover{background-color:var(--color-bg-secondary)!important;color:var(--color-accent)}.sidebar-btn[data-v-933d437f]:active{transform:scale(.95);opacity:1;background-color:var(--color-bg-tertiary)!important}.icon[data-v-933d437f]{width:24px;height:24px;stroke-width:2}.sidebar-btn-label[data-v-933d437f]{display:block;font-size:10px;font-weight:500;line-height:1}}.photo-card[data-v-95f56448]{position:relative;overflow:hidden;border-radius:var(--radius-lg);background-color:var(--color-bg-tertiary);cursor:pointer;transition:all var(--transition-normal)}.photo-card[data-v-95f56448]:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.photo-card[data-v-95f56448]:active{transform:translateY(0)}.photo-card-selectable[data-v-95f56448]{cursor:pointer}.photo-card-selected[data-v-95f56448]{box-shadow:0 0 0 3px var(--color-accent)}.photo-checkbox[data-v-95f56448]{position:absolute;top:var(--spacing-sm);left:var(--spacing-sm);z-index:10}.checkbox-inner[data-v-95f56448]{display:flex;align-items:center;justify-content:center;width:24px;height:24px;background-color:#ffffffe6;border:2px solid var(--color-border);border-radius:var(--radius-sm);transition:all var(--transition-fast);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.checkbox-inner[data-v-95f56448]:hover{border-color:var(--color-accent)}.checkbox-checked[data-v-95f56448]{background-color:var(--color-accent);border-color:var(--color-accent)}.checkbox-inner svg[data-v-95f56448]{width:14px;height:14px;color:#fff}.checkbox-enter-active[data-v-95f56448],.checkbox-leave-active[data-v-95f56448]{transition:all .2s ease}.checkbox-enter-from[data-v-95f56448],.checkbox-leave-to[data-v-95f56448]{opacity:0;transform:scale(.8)}.photo-image-container[data-v-95f56448]{position:relative;width:100%;overflow:hidden}.photo-image[data-v-95f56448]{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:transform var(--transition-slow),opacity .3s ease}.photo-image-loaded[data-v-95f56448]{opacity:1}.photo-card:hover .photo-image[data-v-95f56448]{transform:scale(1.03)}.photo-skeleton[data-v-95f56448]{position:absolute;top:0;right:0;bottom:0;left:0;background-color:var(--color-bg-tertiary);overflow:hidden;z-index:1}.skeleton-shimmer[data-v-95f56448]{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent 0%,var(--color-bg-secondary) 50%,transparent 100%);background-size:200% 100%;animation:shimmer-95f56448 1.5s infinite}@keyframes shimmer-95f56448{0%{background-position:200% 0}to{background-position:-200% 0}}.photo-error[data-v-95f56448]{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-sm);background-color:var(--color-bg-tertiary);color:var(--color-text-muted)}.photo-error svg[data-v-95f56448]{width:32px;height:32px;opacity:.5}.photo-error span[data-v-95f56448]{font-size:var(--font-size-sm)}.photo-footer[data-v-95f56448]{padding:var(--spacing-sm);background-color:var(--color-bg-primary)}.photo-tags[data-v-95f56448]{display:flex;flex-wrap:wrap;gap:var(--spacing-xs);margin-bottom:var(--spacing-xs)}.photo-tag[data-v-95f56448]{font-size:var(--font-size-xs);color:var(--color-text-secondary);cursor:pointer;transition:color var(--transition-fast)}.photo-tag[data-v-95f56448]:hover{color:var(--color-accent)}.photo-tag-more[data-v-95f56448]{font-size:var(--font-size-xs);color:var(--color-text-muted)}.photo-meta[data-v-95f56448]{display:flex;justify-content:space-between;align-items:center}.photo-uploader[data-v-95f56448]{display:flex;align-items:center;gap:var(--spacing-xs)}.uploader-name[data-v-95f56448]{font-size:var(--font-size-xs);color:var(--color-text-muted);cursor:pointer;transition:color var(--transition-fast)}.uploader-name[data-v-95f56448]:hover{color:var(--color-accent)}.photo-like[data-v-95f56448]{display:flex;align-items:center;cursor:pointer}.like-display[data-v-95f56448]{display:flex;align-items:center;gap:4px;color:var(--color-text-muted);transition:color var(--transition-fast);-webkit-user-select:none;user-select:none}.like-display[data-v-95f56448]:hover{color:var(--color-text-primary)}.like-display.is-liked[data-v-95f56448]{color:#ef4444}.like-display svg[data-v-95f56448]{width:16px;height:16px}.like-count[data-v-95f56448]{font-size:var(--font-size-xs);font-weight:500}.photo-card-loading[data-v-95f56448]{pointer-events:none}.photo-status-badge[data-v-95f56448]{position:absolute;top:var(--spacing-sm);right:var(--spacing-sm);padding:4px 8px;border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:600;color:#fff;z-index:2;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.photo-status-badge.pending[data-v-95f56448]{background-color:#ffc107cc}.photo-status-badge.rejected[data-v-95f56448]{background-color:#f44336cc}.photo-waterfall-container[data-v-1fe408e3]{width:100%;min-height:200px}.waterfall-loading[data-v-1fe408e3]{padding:var(--spacing-lg)}.loading-grid[data-v-1fe408e3]{display:grid;gap:var(--spacing-md)}.loading-skeleton[data-v-1fe408e3]{aspect-ratio:4 / 3;background:linear-gradient(90deg,var(--color-bg-tertiary) 25%,var(--color-bg-secondary) 50%,var(--color-bg-tertiary) 75%);background-size:200% 100%;animation:skeleton-loading-1fe408e3 1.5s ease-in-out infinite;border-radius:var(--radius-lg)}@keyframes skeleton-loading-1fe408e3{0%{background-position:200% 0}to{background-position:-200% 0}}.waterfall-empty[data-v-1fe408e3]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-xxl) var(--spacing-lg);text-align:center}.empty-icon[data-v-1fe408e3]{display:flex;align-items:center;justify-content:center;width:80px;height:80px;margin-bottom:var(--spacing-lg);background-color:var(--color-bg-tertiary);border-radius:var(--radius-xl)}.empty-icon svg[data-v-1fe408e3]{width:40px;height:40px;color:var(--color-text-muted)}.empty-title[data-v-1fe408e3]{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin-bottom:var(--spacing-sm)}.empty-description[data-v-1fe408e3]{font-size:var(--font-size-md);color:var(--color-text-secondary)}.waterfall-grid[data-v-1fe408e3]{position:relative;width:100%}.waterfall-item[data-v-1fe408e3]{position:absolute;transition:transform .3s ease,opacity .3s ease,left .3s ease,top .3s ease}.load-more-trigger[data-v-1fe408e3]{display:flex;align-items:center;justify-content:center;padding:var(--spacing-xl) var(--spacing-lg);min-height:80px}.load-more-spinner[data-v-1fe408e3]{display:flex;align-items:center;gap:var(--spacing-sm);color:var(--color-text-secondary);font-size:var(--font-size-sm)}.spinner[data-v-1fe408e3]{width:20px;height:20px;border:2px solid var(--color-border);border-top-color:var(--color-accent);border-radius:var(--radius-round);animation:spin-1fe408e3 .8s linear infinite}@keyframes spin-1fe408e3{to{transform:rotate(360deg)}}.no-more[data-v-1fe408e3]{font-size:var(--font-size-sm);color:var(--color-text-muted)}@media (max-width: 768px){.loading-grid[data-v-1fe408e3]{grid-template-columns:repeat(2,1fr)!important}.empty-icon[data-v-1fe408e3]{width:64px;height:64px}.empty-icon svg[data-v-1fe408e3]{width:32px;height:32px}.empty-title[data-v-1fe408e3]{font-size:var(--font-size-lg)}.empty-description[data-v-1fe408e3]{font-size:var(--font-size-sm)}}.photo-viewer[data-v-75712690]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);display:flex;flex-direction:column;background-color:#000000f2}.viewer-backdrop[data-v-75712690]{position:absolute;top:0;right:0;bottom:0;left:0}.viewer-nav[data-v-75712690]{position:absolute;top:50%;z-index:10;display:flex;align-items:center;justify-content:center;width:56px;height:56px;background-color:#ffffff1a;border-radius:var(--radius-round);color:#fff;transform:translateY(-50%);transition:all var(--transition-fast);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.viewer-nav[data-v-75712690]:hover:not(:disabled){background-color:#fff3}.viewer-nav[data-v-75712690]:active:not(:disabled){transform:translateY(-50%) scale(.95)}.viewer-nav[data-v-75712690]:disabled{opacity:.3;cursor:not-allowed}.viewer-nav svg[data-v-75712690]{width:24px;height:24px}.viewer-nav-prev[data-v-75712690]{left:var(--spacing-lg)}.viewer-nav-next[data-v-75712690]{right:var(--spacing-lg)}.viewer-content[data-v-75712690]{flex:1;display:flex;align-items:center;justify-content:center;overflow:hidden;-webkit-user-select:none;user-select:none}.viewer-image-wrapper[data-v-75712690]{display:flex;align-items:center;justify-content:center;transition:transform .1s ease}.viewer-image[data-v-75712690]{max-width:90vw;max-height:80vh;object-fit:contain;transition:transform .2s ease}.viewer-loading[data-v-75712690]{position:absolute;display:flex;align-items:center;justify-content:center}.loading-spinner[data-v-75712690]{width:40px;height:40px;border:3px solid rgba(255,255,255,.2);border-top-color:#fff;border-radius:var(--radius-round);animation:spin-75712690 .8s linear infinite}@keyframes spin-75712690{to{transform:rotate(360deg)}}.viewer-top-toolbar[data-v-75712690]{position:absolute;top:0;left:0;right:0;display:flex;justify-content:center;padding:var(--spacing-md);background:linear-gradient(to bottom,rgba(0,0,0,.6) 0%,transparent 100%);z-index:20;pointer-events:none}.viewer-top-toolbar .toolbar-center[data-v-75712690]{display:flex;align-items:center;gap:var(--spacing-sm);pointer-events:auto;position:absolute;left:50%;transform:translate(-50%)}.viewer-top-toolbar .toolbar-right[data-v-75712690]{display:flex;align-items:center;gap:var(--spacing-sm);pointer-events:auto;position:absolute;right:var(--spacing-md)}.viewer-toolbar[data-v-75712690]{position:absolute;bottom:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md) var(--spacing-lg);background:linear-gradient(to top,rgba(0,0,0,.6) 0%,transparent 100%);z-index:20}.toolbar-left[data-v-75712690],.toolbar-right[data-v-75712690]{display:flex;align-items:center;gap:var(--spacing-sm)}.photo-info[data-v-75712690]{color:#fff;font-size:var(--font-size-sm)}.photo-index[data-v-75712690]{opacity:.8}.toolbar-btn[data-v-75712690]{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background-color:#ffffff1a;border-radius:var(--radius-round);color:#fff;transition:all var(--transition-fast);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.toolbar-btn.is-liked[data-v-75712690]{color:#ef4444;background-color:#fff3}.toolbar-btn[data-v-75712690]:hover:not(:disabled){background-color:#fff3}.toolbar-btn[data-v-75712690]:active:not(:disabled){transform:scale(.95)}.toolbar-btn[data-v-75712690]:disabled{opacity:.3;cursor:not-allowed}.toolbar-btn svg[data-v-75712690]{width:20px;height:20px}.toolbar-btn-close[data-v-75712690]{background-color:#ff3b304d}.toolbar-btn-close[data-v-75712690]:hover{background-color:#ff3b3080}.zoom-level[data-v-75712690]{min-width:50px;text-align:center;font-size:var(--font-size-sm);color:#fff;opacity:.8}.viewer-thumbnails[data-v-75712690]{display:flex;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-md);background-color:#00000080;overflow-x:auto;scrollbar-width:none}.viewer-thumbnails[data-v-75712690]::-webkit-scrollbar{display:none}.thumbnail-item[data-v-75712690]{flex-shrink:0;width:60px;height:60px;padding:2px;background-color:transparent;border:2px solid transparent;border-radius:var(--radius-sm);overflow:hidden;transition:all var(--transition-fast)}.thumbnail-item[data-v-75712690]:hover{border-color:#ffffff80}.thumbnail-active[data-v-75712690]{border-color:#fff}.thumbnail-item img[data-v-75712690]{width:100%;height:100%;object-fit:cover;border-radius:calc(var(--radius-sm) - 2px)}.viewer-enter-active[data-v-75712690]{transition:opacity .3s ease}.viewer-leave-active[data-v-75712690]{transition:opacity .2s ease}.viewer-enter-from[data-v-75712690],.viewer-leave-to[data-v-75712690]{opacity:0}.slide-left-enter-active[data-v-75712690],.slide-left-leave-active[data-v-75712690],.slide-right-enter-active[data-v-75712690],.slide-right-leave-active[data-v-75712690]{transition:all .3s ease}.slide-left-enter-from[data-v-75712690]{opacity:0;transform:translate(50px)}.slide-left-leave-to[data-v-75712690],.slide-right-enter-from[data-v-75712690]{opacity:0;transform:translate(-50px)}.slide-right-leave-to[data-v-75712690]{opacity:0;transform:translate(50px)}@media (max-width: 768px){.viewer-nav[data-v-75712690]{width:44px;height:44px}.viewer-nav svg[data-v-75712690]{width:20px;height:20px}.viewer-nav-prev[data-v-75712690]{left:var(--spacing-sm)}.viewer-nav-next[data-v-75712690]{right:var(--spacing-sm)}.viewer-image[data-v-75712690]{max-width:100vw;max-height:70vh}.viewer-toolbar[data-v-75712690]{padding:var(--spacing-sm) var(--spacing-md)}.toolbar-btn[data-v-75712690]{width:36px;height:36px}.toolbar-btn svg[data-v-75712690]{width:18px;height:18px}.thumbnail-item[data-v-75712690]{width:50px;height:50px}}.context-menu[data-v-c0d4c90b]{position:fixed;z-index:var(--z-popover);min-width:180px;max-width:280px;padding:var(--spacing-xs);background-color:var(--color-bg-elevated);border:1px solid var(--color-border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}.context-menu-divider[data-v-c0d4c90b]{height:1px;margin:var(--spacing-xs) var(--spacing-sm);background-color:var(--color-separator)}.context-menu-item[data-v-c0d4c90b]{display:flex;align-items:center;gap:var(--spacing-sm);width:100%;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-sm);font-size:var(--font-size-sm);color:var(--color-text-primary);text-align:left;transition:background-color var(--transition-fast)}.context-menu-item[data-v-c0d4c90b]:hover:not(:disabled){background-color:var(--color-accent-light)}.context-menu-item[data-v-c0d4c90b]:active:not(:disabled){background-color:var(--color-accent-lighter)}.context-menu-item-disabled[data-v-c0d4c90b]{opacity:.4;cursor:not-allowed}.context-menu-item-danger[data-v-c0d4c90b]{color:var(--color-error)}.context-menu-item-danger[data-v-c0d4c90b]:hover:not(:disabled){background-color:#ff3b301a}.context-menu-icon[data-v-c0d4c90b]{display:flex;align-items:center;justify-content:center;width:18px;height:18px;flex-shrink:0}.context-menu-icon svg[data-v-c0d4c90b]{width:100%;height:100%}.context-menu-label[data-v-c0d4c90b]{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.context-menu-shortcut[data-v-c0d4c90b]{flex-shrink:0;font-size:var(--font-size-xs);color:var(--color-text-muted)}.context-menu-enter-active[data-v-c0d4c90b]{transition:all .15s cubic-bezier(.4,0,.2,1)}.context-menu-leave-active[data-v-c0d4c90b]{transition:all .1s cubic-bezier(.4,0,.2,1)}.context-menu-enter-from[data-v-c0d4c90b],.context-menu-leave-to[data-v-c0d4c90b]{opacity:0;transform:scale(.95)}.main-content[data-v-0abe0734]{position:relative;min-height:100vh;background-color:var(--color-bg-page);padding-left:calc(var(--sidebar-width) + var(--spacing-lg) * 2)}.content-body[data-v-0abe0734]{min-height:100vh;padding:var(--spacing-lg)}.selection-toolbar[data-v-0abe0734]{position:fixed;bottom:var(--spacing-lg);left:50%;transform:translate(-50%);z-index:var(--z-sticky);display:flex;align-items:center;gap:var(--spacing-lg);padding:var(--spacing-md) var(--spacing-lg);background-color:var(--color-bg-elevated);border:1px solid var(--color-border-light);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.toolbar-info[data-v-0abe0734]{padding-right:var(--spacing-md);border-right:1px solid var(--color-separator)}.selection-count[data-v-0abe0734]{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary);white-space:nowrap}.toolbar-actions[data-v-0abe0734]{display:flex;align-items:center;gap:var(--spacing-sm)}.toolbar-enter-active[data-v-0abe0734],.toolbar-leave-active[data-v-0abe0734]{transition:all .3s cubic-bezier(.34,1.56,.64,1)}.toolbar-enter-from[data-v-0abe0734],.toolbar-leave-to[data-v-0abe0734]{opacity:0;transform:translate(-50%) translateY(20px)}@media (min-width: 1400px){.main-content[data-v-0abe0734]{padding-left:calc(var(--sidebar-expanded-width) + var(--spacing-lg) * 2)}}@media (max-width: 768px){.main-content[data-v-0abe0734]{padding-left:0}.content-body[data-v-0abe0734]{padding:var(--spacing-md);padding-bottom:calc(var(--spacing-md) + 80px)}.selection-toolbar[data-v-0abe0734]{bottom:calc(80px + var(--spacing-md));left:var(--spacing-md);right:var(--spacing-md);transform:none;flex-direction:column;gap:var(--spacing-md)}.toolbar-info[data-v-0abe0734]{padding-right:0;border-right:none;padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--color-separator);width:100%;text-align:center}.toolbar-actions[data-v-0abe0734]{flex-wrap:wrap;justify-content:center}.toolbar-enter-from[data-v-0abe0734],.toolbar-leave-to[data-v-0abe0734]{transform:translateY(100%)}}.locked-state[data-v-0abe0734]{display:flex;align-items:center;justify-content:center;height:60vh;width:100%}.locked-content[data-v-0abe0734]{text-align:center;color:var(--color-text-secondary)}.locked-icon[data-v-0abe0734]{font-size:4rem;margin-bottom:var(--spacing-md)}.locked-content h3[data-v-0abe0734]{font-size:1.5rem;margin-bottom:var(--spacing-sm);color:var(--color-text-primary)}.login-btn[data-v-0abe0734]{margin-top:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg);background-color:var(--color-accent);color:#fff;border:none;border-radius:var(--radius-md);font-size:var(--font-size-md);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-fast)}.login-btn[data-v-0abe0734]:hover{background-color:var(--color-accent-hover);box-shadow:var(--shadow-hover)}.login-btn[data-v-0abe0734]:active{background-color:var(--color-accent-active)}.loading-placeholder[data-v-0abe0734]{height:60vh;width:100%}.modal-overlay[data-v-e07fec6d]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal-backdrop);display:flex;align-items:center;justify-content:center;padding:var(--spacing-lg);background-color:var(--color-overlay);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.modal-container[data-v-e07fec6d]{position:relative;z-index:var(--z-modal);display:flex;flex-direction:column;max-height:calc(100vh - var(--spacing-xl) * 2);background-color:var(--color-bg-elevated);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);overflow:hidden}.modal-sm[data-v-e07fec6d]{width:100%;max-width:360px}.modal-md[data-v-e07fec6d]{width:100%;max-width:480px}.modal-lg[data-v-e07fec6d]{width:100%;max-width:640px}.modal-xl[data-v-e07fec6d]{width:100%;max-width:960px}.modal-fullscreen[data-v-e07fec6d]{width:calc(100vw - var(--spacing-lg) * 2);height:calc(100vh - var(--spacing-lg) * 2);max-width:none;max-height:none;border-radius:var(--radius-lg)}.modal-header[data-v-e07fec6d]{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--spacing-md);padding:var(--spacing-lg) var(--spacing-lg) var(--spacing-sm);flex-shrink:0}.modal-title-wrapper[data-v-e07fec6d]{flex:1;min-width:0}.modal-title[data-v-e07fec6d]{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);line-height:var(--line-height-tight);margin:0}.modal-subtitle[data-v-e07fec6d]{margin-top:var(--spacing-xs);font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:var(--line-height-normal)}.modal-close-btn[data-v-e07fec6d]{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--radius-round);background-color:var(--color-bg-tertiary);color:var(--color-text-secondary);transition:all var(--transition-fast);flex-shrink:0}.modal-close-btn[data-v-e07fec6d]:hover{background-color:var(--color-border);color:var(--color-text-primary)}.modal-close-btn[data-v-e07fec6d]:active{transform:scale(.95)}.modal-close-btn svg[data-v-e07fec6d]{width:16px;height:16px}.modal-body[data-v-e07fec6d]{padding:var(--spacing-md) var(--spacing-lg);flex:1;min-height:0}.modal-body-scroll[data-v-e07fec6d]{overflow-y:auto;overscroll-behavior:contain}.modal-footer[data-v-e07fec6d]{display:flex;align-items:center;justify-content:flex-end;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-lg) var(--spacing-lg);flex-shrink:0}.modal-enter-active[data-v-e07fec6d]{transition:opacity .25s cubic-bezier(.4,0,.2,1)}.modal-leave-active[data-v-e07fec6d]{transition:opacity .2s cubic-bezier(.4,0,.2,1)}.modal-enter-from[data-v-e07fec6d],.modal-leave-to[data-v-e07fec6d]{opacity:0}.modal-enter-active .modal-container[data-v-e07fec6d]{transition:transform .3s cubic-bezier(.34,1.56,.64,1),opacity .25s ease}.modal-leave-active .modal-container[data-v-e07fec6d]{transition:transform .2s cubic-bezier(.4,0,.2,1),opacity .2s ease}.modal-enter-from .modal-container[data-v-e07fec6d]{opacity:0;transform:scale(.9) translateY(20px)}.modal-leave-to .modal-container[data-v-e07fec6d]{opacity:0;transform:scale(.95) translateY(10px)}@media (max-width: 640px){.modal-overlay[data-v-e07fec6d]{padding:0;align-items:flex-end}.modal-container[data-v-e07fec6d]{max-height:85vh;border-radius:var(--radius-xl) var(--radius-xl) 0 0;padding-bottom:env(safe-area-inset-bottom)}.modal-sm[data-v-e07fec6d],.modal-md[data-v-e07fec6d],.modal-lg[data-v-e07fec6d],.modal-xl[data-v-e07fec6d]{max-width:100%;width:100%}.modal-enter-from .modal-container[data-v-e07fec6d],.modal-leave-to .modal-container[data-v-e07fec6d]{transform:translateY(100%)}}.pwa-install-prompt[data-v-6ad5e02b]{position:fixed;bottom:20px;left:50%;transform:translate(-50%);z-index:10000;width:calc(100% - 40px);max-width:400px}.prompt-content[data-v-6ad5e02b]{display:flex;align-items:center;gap:12px;padding:16px;background:var(--color-bg-primary);border-radius:16px;box-shadow:0 4px 20px #00000026;border:1px solid var(--color-border)}.prompt-icon img[data-v-6ad5e02b]{width:48px;height:48px;border-radius:12px}.prompt-text[data-v-6ad5e02b]{flex:1;min-width:0}.prompt-text h4[data-v-6ad5e02b]{margin:0 0 4px;font-size:14px;font-weight:600;color:var(--color-text-primary)}.prompt-text p[data-v-6ad5e02b]{margin:0;font-size:12px;color:var(--color-text-secondary)}.prompt-actions[data-v-6ad5e02b]{display:flex;gap:8px;flex-shrink:0}.btn-dismiss[data-v-6ad5e02b],.btn-install[data-v-6ad5e02b]{padding:8px 16px;border-radius:8px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-dismiss[data-v-6ad5e02b]{background:transparent;border:1px solid var(--color-border);color:var(--color-text-secondary)}.btn-dismiss[data-v-6ad5e02b]:hover{background:var(--color-bg-secondary)}.btn-install[data-v-6ad5e02b]{background:var(--color-accent);border:none;color:#fff}.btn-install[data-v-6ad5e02b]:hover{background:var(--color-accent-hover, #3a80c9);transform:translateY(-1px)}.slide-up-enter-active[data-v-6ad5e02b],.slide-up-leave-active[data-v-6ad5e02b]{transition:all .3s ease}.slide-up-enter-from[data-v-6ad5e02b],.slide-up-leave-to[data-v-6ad5e02b]{opacity:0;transform:translate(-50%) translateY(20px)}@media (max-width: 480px){.pwa-install-prompt[data-v-6ad5e02b]{bottom:16px;width:calc(100% - 32px)}.prompt-content[data-v-6ad5e02b]{flex-wrap:wrap;padding:12px}.prompt-actions[data-v-6ad5e02b]{width:100%;justify-content:flex-end;margin-top:8px}}.update-prompt[data-v-a20580d2]{position:fixed;top:16px;left:50%;transform:translate(-50%);z-index:10002}.update-content[data-v-a20580d2]{display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--color-accent);color:#fff;border-radius:12px;box-shadow:0 4px 20px #4a90d966;font-size:14px}.update-icon[data-v-a20580d2]{width:20px;height:20px;flex-shrink:0}.btn-update[data-v-a20580d2]{padding:6px 14px;background:#fff;color:var(--color-accent);border:none;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s ease;white-space:nowrap}.btn-update[data-v-a20580d2]:hover{transform:scale(1.05)}.btn-close[data-v-a20580d2]{display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;background:#fff3;border:none;border-radius:50%;cursor:pointer;transition:background .2s ease}.btn-close[data-v-a20580d2]:hover{background:#ffffff4d}.btn-close svg[data-v-a20580d2]{width:14px;height:14px;color:#fff}.slide-down-enter-active[data-v-a20580d2],.slide-down-leave-active[data-v-a20580d2]{transition:all .3s ease}.slide-down-enter-from[data-v-a20580d2],.slide-down-leave-to[data-v-a20580d2]{opacity:0;transform:translate(-50%) translateY(-20px)}@media (max-width: 480px){.update-prompt[data-v-a20580d2]{width:calc(100% - 32px)}.update-content[data-v-a20580d2]{flex-wrap:wrap;justify-content:center;text-align:center}.update-content span[data-v-a20580d2]{flex-basis:100%;margin-bottom:8px}}.offline-indicator[data-v-f9b16cc6]{position:fixed;top:16px;left:50%;transform:translate(-50%);z-index:10001;display:flex;align-items:center;gap:8px;padding:10px 20px;background:#f59e0b;color:#fff;border-radius:24px;font-size:14px;font-weight:500;box-shadow:0 4px 12px #f59e0b66}.offline-icon[data-v-f9b16cc6]{width:18px;height:18px}.fade-slide-enter-active[data-v-f9b16cc6],.fade-slide-leave-active[data-v-f9b16cc6]{transition:all .3s ease}.fade-slide-enter-from[data-v-f9b16cc6],.fade-slide-leave-to[data-v-f9b16cc6]{opacity:0;transform:translate(-50%) translateY(-10px)}.toast-container[data-v-87a593c1]{position:fixed;top:20px;left:50%;transform:translate(-50%);z-index:9999;display:flex;flex-direction:column;gap:10px;pointer-events:none}.toast-item[data-v-87a593c1]{pointer-events:auto;display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:8px;background:#fff;box-shadow:0 4px 12px #00000026;min-width:300px;max-width:90vw;color:var(--color-text-primary);font-size:.95rem;border:1px solid transparent}.toast-icon[data-v-87a593c1]{display:flex;align-items:center;justify-content:center;width:20px;height:20px;flex-shrink:0}.toast-icon svg[data-v-87a593c1]{width:100%;height:100%}.toast-message[data-v-87a593c1]{flex:1;line-height:1.4}.toast-close[data-v-87a593c1]{display:flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;border:none;background:transparent;color:var(--color-text-tertiary);cursor:pointer;opacity:.6;transition:opacity .2s}.toast-close[data-v-87a593c1]:hover{opacity:1}.toast-close svg[data-v-87a593c1]{width:16px;height:16px}.toast-success[data-v-87a593c1]{border-color:#d1fae5;background:#ecfdf5}.toast-success .toast-icon[data-v-87a593c1]{color:#059669}.toast-error[data-v-87a593c1]{border-color:#fee2e2;background:#fef2f2}.toast-error .toast-icon[data-v-87a593c1]{color:#dc2626}.toast-warning[data-v-87a593c1]{border-color:#fef3c7;background:#fffbeb}.toast-warning .toast-icon[data-v-87a593c1]{color:#d97706}.toast-info[data-v-87a593c1]{border-color:#e0f2fe;background:#f0f9ff}.toast-info .toast-icon[data-v-87a593c1]{color:#0284c7}@media (prefers-color-scheme: dark){.toast-item[data-v-87a593c1]{background:#1f2937;color:#f3f4f6;border-color:#374151}.toast-success[data-v-87a593c1]{background:#064e3b;border-color:#065f46}.toast-success .toast-icon[data-v-87a593c1]{color:#34d399}.toast-error[data-v-87a593c1]{background:#7f1d1d;border-color:#991b1b}.toast-error .toast-icon[data-v-87a593c1]{color:#f87171}.toast-warning[data-v-87a593c1]{background:#78350f;border-color:#92400e}.toast-warning .toast-icon[data-v-87a593c1]{color:#fbbf24}.toast-info[data-v-87a593c1]{background:#0c4a6e;border-color:#075985}.toast-info .toast-icon[data-v-87a593c1]{color:#38bdf8}}.toast-enter-active[data-v-87a593c1],.toast-leave-active[data-v-87a593c1]{transition:all .3s ease}.toast-enter-from[data-v-87a593c1]{opacity:0;transform:translateY(-20px)}.toast-leave-to[data-v-87a593c1]{opacity:0;transform:translate(30px)}.verification-content[data-v-f28fc2f3]{padding:1rem 0}.form-group[data-v-f28fc2f3]{margin-bottom:1.5rem}.form-group label[data-v-f28fc2f3]{display:block;margin-bottom:.5rem;font-weight:500}.form-group input[data-v-f28fc2f3]{width:100%;padding:.75rem;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-secondary);color:var(--color-text-primary)}.btn-block[data-v-f28fc2f3]{width:100%;padding:.75rem}.btn-danger[data-v-f28fc2f3]{background-color:var(--color-error);color:#fff}.btn-danger[data-v-f28fc2f3]:hover:not(:disabled){background-color:var(--color-error-hover)}.info-text[data-v-f28fc2f3]{text-align:center;margin-bottom:1.5rem;color:var(--color-text-secondary)}.code-inputs[data-v-f28fc2f3]{display:flex;gap:.5rem;justify-content:center;margin-bottom:1.5rem}.code-input[data-v-f28fc2f3]{width:3rem;height:3.5rem;text-align:center;font-size:1.5rem;border:2px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-secondary);color:var(--color-text-primary);transition:all .2s}.code-input[data-v-f28fc2f3]:focus{border-color:var(--color-primary);outline:none}.code-input.success[data-v-f28fc2f3]{border-color:var(--color-success);box-shadow:0 0 10px var(--color-success)}.code-input.error[data-v-f28fc2f3]{border-color:var(--color-error);box-shadow:0 0 10px var(--color-error)}.shake[data-v-f28fc2f3]{animation:shake-f28fc2f3 .5s cubic-bezier(.36,.07,.19,.97) both}@keyframes shake-f28fc2f3{10%,90%{transform:translate3d(-1px,0,0)}20%,80%{transform:translate3d(2px,0,0)}30%,50%,70%{transform:translate3d(-4px,0,0)}40%,60%{transform:translate3d(4px,0,0)}}.actions[data-v-f28fc2f3]{display:flex;justify-content:space-between;margin-top:1rem}.btn-text[data-v-f28fc2f3]{background:none;border:none;color:var(--color-primary);cursor:pointer;padding:.5rem}.btn-text[data-v-f28fc2f3]:disabled{color:var(--color-text-disabled);cursor:not-allowed}.error-text[data-v-f28fc2f3]{color:var(--color-error);font-size:.875rem;margin-top:.5rem}.login-container[data-v-c8602e06]{width:100%;max-width:400px;margin:0 auto}.login-header[data-v-c8602e06]{text-align:center;margin-bottom:var(--spacing-lg)}.login-title[data-v-c8602e06]{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin-bottom:var(--spacing-xs)}.login-subtitle[data-v-c8602e06]{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.login-form[data-v-c8602e06]{display:flex;flex-direction:column;gap:var(--spacing-lg);margin-bottom:var(--spacing-sm)}.form-group[data-v-c8602e06]{display:flex;flex-direction:column;gap:var(--spacing-sm)}.form-label-row[data-v-c8602e06]{display:flex;justify-content:space-between;align-items:center}.form-label[data-v-c8602e06]{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary)}.form-input[data-v-c8602e06]{width:100%;padding:var(--spacing-md) var(--spacing-md);font-size:var(--font-size-md);border:2px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-bg-secondary);color:var(--color-text-primary);transition:all var(--transition-fast);font-weight:var(--font-weight-normal)}.form-input[data-v-c8602e06]:focus{outline:none;border-color:var(--color-accent);background-color:var(--color-bg-primary);box-shadow:0 0 0 3px var(--color-accent-light)}.form-input[data-v-c8602e06]:hover:not(:focus){border-color:var(--color-accent)}.form-input[data-v-c8602e06]:disabled{opacity:.6;cursor:not-allowed;transform:none}.form-input[data-v-c8602e06]::placeholder{color:var(--color-text-placeholder);font-weight:var(--font-weight-light)}.password-input-wrapper[data-v-c8602e06]{position:relative}.password-input-wrapper .form-input[data-v-c8602e06]{padding-right:48px}.password-toggle[data-v-c8602e06]{position:absolute;right:var(--spacing-sm);top:50%;transform:translateY(-50%);width:36px;height:36px;color:var(--color-text-secondary);background:transparent;border:none;border-radius:var(--radius-sm);cursor:pointer;padding:6px;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast)}.password-toggle[data-v-c8602e06]:hover{color:var(--color-accent);background-color:var(--color-accent-light);transform:translateY(-50%) scale(1.05)}.password-toggle[data-v-c8602e06]:active{transform:translateY(-50%) scale(.95)}.password-toggle svg[data-v-c8602e06]{width:20px;height:20px}.form-error[data-v-c8602e06]{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md);background-color:#ff3b301a;border-radius:var(--radius-md);color:var(--color-error);font-size:var(--font-size-sm);margin-top:var(--spacing-sm);border-left:3px solid var(--color-error)}.form-error svg[data-v-c8602e06]{width:18px;height:18px;flex-shrink:0}.form-actions[data-v-c8602e06]{display:flex;flex-direction:column;gap:var(--spacing-md);margin-top:var(--spacing-md)}.form-footer[data-v-c8602e06]{display:flex;justify-content:center;align-items:baseline;gap:var(--spacing-xs);margin-top:var(--spacing-lg);font-size:var(--font-size-md)}.footer-text[data-v-c8602e06]{color:var(--color-text-secondary)}.btn[data-v-c8602e06]{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);border-radius:var(--radius-md);border:none;cursor:pointer;transition:all var(--transition-fast);min-width:80px;white-space:nowrap}.btn[data-v-c8602e06]:disabled{opacity:.6;cursor:not-allowed;transform:none!important}.btn-block[data-v-c8602e06]{width:100%}.btn-primary[data-v-c8602e06]{background:linear-gradient(135deg,var(--color-accent),var(--color-accent-hover));color:#fff;box-shadow:0 2px 8px #007aff40}.btn-primary[data-v-c8602e06]:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #007aff59}.btn-primary[data-v-c8602e06]:active:not(:disabled){transform:translateY(0);background-color:var(--color-accent-active)}.btn-secondary[data-v-c8602e06]{background-color:var(--color-bg-secondary);color:var(--color-text-primary);border:2px solid var(--color-border);font-weight:var(--font-weight-medium)}.btn-secondary[data-v-c8602e06]:hover:not(:disabled){background-color:var(--color-bg-tertiary);border-color:var(--color-accent);color:var(--color-accent);transform:translateY(-1px)}.btn-secondary[data-v-c8602e06]:active:not(:disabled){transform:translateY(0)}.btn-link[data-v-c8602e06]{background:none;border:none;color:var(--color-accent);cursor:pointer;padding:0;font-size:var(--font-size-md);font-weight:var(--font-weight-medium);transition:color var(--transition-fast);font-family:inherit}.btn-link[data-v-c8602e06]:hover:not(:disabled){color:var(--color-accent-hover);text-decoration:underline}.btn-link-sm[data-v-c8602e06]{font-size:var(--font-size-sm)}.btn-loading .spinner[data-v-c8602e06]{width:18px;height:18px;animation:spin-c8602e06 1s linear infinite}.btn-loading .spinner circle[data-v-c8602e06]{stroke-dasharray:60;stroke-dashoffset:45}@keyframes spin-c8602e06{to{transform:rotate(360deg)}}.fade-enter-active[data-v-c8602e06],.fade-leave-active[data-v-c8602e06]{transition:opacity var(--transition-fast)}.fade-enter-from[data-v-c8602e06],.fade-leave-to[data-v-c8602e06]{opacity:0}.reset-form[data-v-24520144]{display:flex;flex-direction:column;gap:var(--spacing-lg)}.form-group[data-v-24520144]{display:flex;flex-direction:column;gap:var(--spacing-sm)}.form-label[data-v-24520144]{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary)}.form-input[data-v-24520144]{width:100%;padding:var(--spacing-md) var(--spacing-md);font-size:var(--font-size-md);border:2px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-bg-secondary);color:var(--color-text-primary);transition:all var(--transition-fast);font-weight:var(--font-weight-normal)}.form-input[data-v-24520144]:focus{outline:none;border-color:var(--color-accent);background-color:var(--color-bg-primary);box-shadow:0 0 0 3px var(--color-accent-light);transform:translateY(-1px)}.form-input[data-v-24520144]:disabled{opacity:.6;cursor:not-allowed;transform:none}.form-input[data-v-24520144]::placeholder{color:var(--color-text-placeholder);font-weight:var(--font-weight-light)}.form-success[data-v-24520144]{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md);background-color:#34c7591a;border-radius:var(--radius-md);color:var(--color-success);font-size:var(--font-size-sm);margin-top:var(--spacing-sm);border-left:3px solid var(--color-success)}.form-success svg[data-v-24520144]{width:18px;height:18px;flex-shrink:0}.form-error[data-v-24520144]{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md);background-color:#ff3b301a;border-radius:var(--radius-md);color:var(--color-error);font-size:var(--font-size-sm);margin-top:var(--spacing-sm);border-left:3px solid var(--color-error)}.form-error svg[data-v-24520144]{width:18px;height:18px;flex-shrink:0}.form-info[data-v-24520144]{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md);background-color:#007aff1a;border-radius:var(--radius-md);color:var(--color-info);font-size:var(--font-size-sm);margin-top:var(--spacing-sm);border-left:3px solid var(--color-info)}.form-info svg[data-v-24520144]{width:18px;height:18px;flex-shrink:0}.dialog-actions[data-v-24520144]{display:flex;justify-content:flex-end;gap:var(--spacing-md)}.btn[data-v-24520144]{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);border-radius:var(--radius-md);border:none;cursor:pointer;transition:all var(--transition-fast);min-width:80px;white-space:nowrap}.btn[data-v-24520144]:disabled{opacity:.6;cursor:not-allowed;transform:none!important}.btn-primary[data-v-24520144]{background:linear-gradient(135deg,var(--color-accent),var(--color-accent-hover));color:#fff;box-shadow:0 2px 8px #007aff40}.btn-primary[data-v-24520144]:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #007aff59}.btn-primary[data-v-24520144]:active:not(:disabled){transform:translateY(0);background-color:var(--color-accent-active)}.btn-secondary[data-v-24520144]{background-color:var(--color-bg-secondary);color:var(--color-text-primary);border:2px solid var(--color-border);font-weight:var(--font-weight-medium)}.btn-secondary[data-v-24520144]:hover:not(:disabled){background-color:var(--color-bg-tertiary);border-color:var(--color-accent);color:var(--color-accent);transform:translateY(-1px)}.btn-secondary[data-v-24520144]:active:not(:disabled){transform:translateY(0)}.btn-loading .spinner[data-v-24520144]{width:18px;height:18px;animation:spin-24520144 1s linear infinite}.btn-loading .spinner circle[data-v-24520144]{stroke-dasharray:60;stroke-dashoffset:45}@keyframes spin-24520144{to{transform:rotate(360deg)}}.fade-enter-active[data-v-24520144],.fade-leave-active[data-v-24520144]{transition:opacity var(--transition-fast)}.fade-enter-from[data-v-24520144],.fade-leave-to[data-v-24520144]{opacity:0}@media (max-width: 480px){.dialog-actions[data-v-24520144]{flex-direction:column-reverse;gap:var(--spacing-sm);width:100%}.dialog-actions .btn[data-v-24520144]{flex:1;width:100%;min-width:0}.form-info[data-v-24520144],.form-success[data-v-24520144],.form-error[data-v-24520144]{font-size:var(--font-size-xs)}}.register-form[data-v-ae0f808f]{display:flex;flex-direction:column;gap:var(--spacing-lg)}.form-group[data-v-ae0f808f]{display:flex;flex-direction:column;gap:var(--spacing-sm)}.form-label[data-v-ae0f808f]{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary)}.form-input[data-v-ae0f808f]{width:100%;padding:var(--spacing-md);font-size:var(--font-size-md);border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-bg-secondary);color:var(--color-text-primary);transition:all var(--transition-fast)}.form-input[data-v-ae0f808f]:focus{outline:none;border-color:var(--color-accent);background-color:var(--color-bg-primary);box-shadow:0 0 0 3px var(--color-accent-light)}.form-input[data-v-ae0f808f]:disabled{opacity:.6;cursor:not-allowed}.form-input[data-v-ae0f808f]::placeholder{color:var(--color-text-placeholder)}.password-input-wrapper[data-v-ae0f808f]{position:relative}.password-input-wrapper .form-input[data-v-ae0f808f]{padding-right:48px}.password-toggle[data-v-ae0f808f]{position:absolute;right:var(--spacing-md);top:50%;transform:translateY(-50%);width:24px;height:24px;color:var(--color-text-secondary);background:none;border:none;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;transition:color var(--transition-fast)}.password-toggle[data-v-ae0f808f]:hover{color:var(--color-text-primary)}.password-toggle svg[data-v-ae0f808f]{width:20px;height:20px}.help-text[data-v-ae0f808f]{font-size:var(--font-size-xs);color:var(--color-text-tertiary)}.form-error[data-v-ae0f808f]{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md);background-color:#ff3b301a;border-radius:var(--radius-md);color:var(--color-error);font-size:var(--font-size-sm)}.form-error svg[data-v-ae0f808f]{width:18px;height:18px;flex-shrink:0}.form-success[data-v-ae0f808f]{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md);background-color:#34c7591a;border-radius:var(--radius-md);color:var(--color-success);font-size:var(--font-size-sm)}.form-success svg[data-v-ae0f808f]{width:18px;height:18px;flex-shrink:0}.dialog-actions[data-v-ae0f808f]{display:flex;justify-content:flex-end;gap:var(--spacing-md)}.btn[data-v-ae0f808f]{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);font-size:var(--font-size-md);font-weight:var(--font-weight-medium);border-radius:var(--radius-md);border:none;cursor:pointer;transition:all var(--transition-fast)}.btn[data-v-ae0f808f]:disabled{opacity:.6;cursor:not-allowed}.btn-primary[data-v-ae0f808f]{background-color:var(--color-accent);color:#fff}.btn-primary[data-v-ae0f808f]:hover:not(:disabled){background-color:var(--color-accent-hover);box-shadow:var(--shadow-hover)}.btn-primary[data-v-ae0f808f]:active:not(:disabled){background-color:var(--color-accent-active)}.btn-secondary[data-v-ae0f808f]{background-color:var(--color-bg-secondary);color:var(--color-text-primary)}.btn-secondary[data-v-ae0f808f]:hover:not(:disabled){background-color:var(--color-bg-tertiary)}.btn-loading .spinner[data-v-ae0f808f]{width:18px;height:18px;animation:spin-ae0f808f 1s linear infinite}.btn-loading .spinner circle[data-v-ae0f808f]{stroke-dasharray:60;stroke-dashoffset:45}@keyframes spin-ae0f808f{to{transform:rotate(360deg)}}.fade-enter-active[data-v-ae0f808f],.fade-leave-active[data-v-ae0f808f]{transition:opacity var(--transition-fast)}.fade-enter-from[data-v-ae0f808f],.fade-leave-to[data-v-ae0f808f]{opacity:0}.tag-input-container[data-v-a9dc7ac0]{position:relative;width:100%}.tag-input-wrapper[data-v-a9dc7ac0]{display:flex;flex-wrap:wrap;align-items:center;gap:var(--spacing-xs);min-height:44px;padding:var(--spacing-sm) var(--spacing-md);background-color:var(--color-bg-tertiary);border:1px solid var(--color-border-light);border-radius:var(--radius-md);cursor:text;transition:all var(--transition-fast)}.tag-input-wrapper[data-v-a9dc7ac0]:focus-within{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-light)}.tags-list[data-v-a9dc7ac0]{display:flex;flex-wrap:wrap;gap:var(--spacing-xs)}.tag-item[data-v-a9dc7ac0]{display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);background-color:var(--color-accent-light);border-radius:var(--radius-sm);font-size:var(--font-size-sm);color:var(--color-accent);-webkit-user-select:none;user-select:none}.tag-text[data-v-a9dc7ac0]{font-weight:var(--font-weight-medium)}.tag-remove-btn[data-v-a9dc7ac0]{display:flex;align-items:center;justify-content:center;width:16px;height:16px;padding:0;border-radius:var(--radius-round);color:var(--color-accent);opacity:.7;transition:all var(--transition-fast)}.tag-remove-btn[data-v-a9dc7ac0]:hover{opacity:1;background-color:var(--color-accent);color:#fff}.tag-remove-btn svg[data-v-a9dc7ac0]{width:12px;height:12px}.tag-input[data-v-a9dc7ac0]{flex:1;min-width:120px;height:28px;padding:0;background:transparent;font-size:var(--font-size-md);color:var(--color-text-primary)}.tag-input[data-v-a9dc7ac0]::placeholder{color:var(--color-text-placeholder)}.tag-hint[data-v-a9dc7ac0]{margin-top:var(--spacing-xs);font-size:var(--font-size-xs);color:var(--color-text-muted)}.tag-suggestions[data-v-a9dc7ac0]{position:absolute;top:100%;left:0;right:0;z-index:var(--z-dropdown);margin-top:var(--spacing-xs);padding:var(--spacing-xs);background-color:var(--color-bg-elevated);border:1px solid var(--color-border-light);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);max-height:200px;overflow-y:auto}.tag-suggestion-item[data-v-a9dc7ac0]{display:flex;align-items:center;justify-content:space-between;width:100%;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-sm);text-align:left;transition:background-color var(--transition-fast)}.tag-suggestion-item[data-v-a9dc7ac0]:hover{background-color:var(--color-bg-tertiary)}.suggestion-name[data-v-a9dc7ac0]{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.suggestion-count[data-v-a9dc7ac0]{font-size:var(--font-size-xs);color:var(--color-text-muted);background-color:var(--color-bg-tertiary);padding:2px 8px;border-radius:var(--radius-pill)}.tag-enter-active[data-v-a9dc7ac0],.tag-leave-active[data-v-a9dc7ac0]{transition:all .2s ease}.tag-enter-from[data-v-a9dc7ac0],.tag-leave-to[data-v-a9dc7ac0]{opacity:0;transform:scale(.8)}.tag-move[data-v-a9dc7ac0]{transition:transform .2s ease}.dropdown-enter-active[data-v-a9dc7ac0],.dropdown-leave-active[data-v-a9dc7ac0]{transition:all .2s ease}.dropdown-enter-from[data-v-a9dc7ac0],.dropdown-leave-to[data-v-a9dc7ac0]{opacity:0;transform:translateY(-8px)}.upload-content[data-v-c81f69f0]{display:flex;flex-direction:column;gap:var(--spacing-lg)}.drop-zone[data-v-c81f69f0]{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-md);padding:var(--spacing-xxl);border:2px dashed var(--color-border);border-radius:var(--radius-lg);background-color:var(--color-bg-secondary);cursor:pointer;transition:all var(--transition-fast)}.drop-zone[data-v-c81f69f0]:hover{border-color:var(--color-accent);background-color:var(--color-accent-lighter)}.drop-zone.dragging[data-v-c81f69f0]{border-color:var(--color-accent);background-color:var(--color-accent-light);transform:scale(1.01)}.drop-zone.has-files[data-v-c81f69f0]{padding:var(--spacing-lg)}.file-input[data-v-c81f69f0]{position:absolute;width:0;height:0;opacity:0;pointer-events:none}.drop-icon[data-v-c81f69f0]{width:64px;height:64px;color:var(--color-text-muted);transition:color var(--transition-fast)}.drop-icon.small[data-v-c81f69f0]{width:32px;height:32px}.drop-zone:hover .drop-icon[data-v-c81f69f0],.drop-zone.dragging .drop-icon[data-v-c81f69f0]{color:var(--color-accent)}.drop-text[data-v-c81f69f0]{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs);text-align:center}.drop-primary[data-v-c81f69f0]{font-size:var(--font-size-md);font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.drop-hint[data-v-c81f69f0]{font-size:var(--font-size-sm);color:var(--color-text-muted)}.file-list[data-v-c81f69f0]{display:flex;flex-direction:column;gap:var(--spacing-md)}.file-list-header[data-v-c81f69f0]{display:flex;justify-content:space-between;align-items:center;font-size:var(--font-size-sm);color:var(--color-text-secondary)}.clear-btn[data-v-c81f69f0]{font-size:var(--font-size-sm);color:var(--color-accent);background:none;border:none;cursor:pointer;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);transition:all var(--transition-fast)}.clear-btn[data-v-c81f69f0]:hover{background-color:var(--color-accent-light)}.file-grid[data-v-c81f69f0]{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:var(--spacing-md)}.file-item[data-v-c81f69f0]{position:relative;aspect-ratio:1;border-radius:var(--radius-md);overflow:hidden;background-color:var(--color-bg-tertiary)}.file-item.error[data-v-c81f69f0]{opacity:.6}.file-item img[data-v-c81f69f0]{width:100%;height:100%;object-fit:cover}.file-remove[data-v-c81f69f0]{position:absolute;top:var(--spacing-xs);right:var(--spacing-xs);width:24px;height:24px;display:flex;align-items:center;justify-content:center;background-color:#0009;border:none;border-radius:var(--radius-round);color:#fff;cursor:pointer;opacity:0;transition:opacity var(--transition-fast)}.file-item:hover .file-remove[data-v-c81f69f0]{opacity:1}.file-remove svg[data-v-c81f69f0]{width:14px;height:14px}.file-error[data-v-c81f69f0]{position:absolute;bottom:0;left:0;right:0;padding:var(--spacing-xs);background-color:#ff3b30e6;color:#fff;font-size:var(--font-size-xs);text-align:center}.file-uploading[data-v-c81f69f0]{position:absolute;bottom:0;left:0;right:0;height:4px;background-color:#0000004d}.upload-progress[data-v-c81f69f0]{height:100%;background-color:var(--color-accent);transition:width var(--transition-fast)}.file-uploaded[data-v-c81f69f0]{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background-color:#34c759cc;color:#fff}.file-uploaded svg[data-v-c81f69f0]{width:32px;height:32px}.section[data-v-c81f69f0]{display:flex;flex-direction:column;gap:var(--spacing-md)}.section-label[data-v-c81f69f0]{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.upload-error[data-v-c81f69f0]{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md);background-color:#ff3b301a;border-radius:var(--radius-md);color:var(--color-error);font-size:var(--font-size-sm)}.upload-error svg[data-v-c81f69f0]{width:18px;height:18px;flex-shrink:0}.dialog-actions[data-v-c81f69f0]{display:flex;justify-content:flex-end;gap:var(--spacing-md)}.btn[data-v-c81f69f0]{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);font-size:var(--font-size-md);font-weight:var(--font-weight-medium);border-radius:var(--radius-md);border:none;cursor:pointer;transition:all var(--transition-fast)}.btn[data-v-c81f69f0]:disabled{opacity:.6;cursor:not-allowed}.btn-primary[data-v-c81f69f0]{background-color:var(--color-accent);color:#fff}.btn-primary[data-v-c81f69f0]:hover:not(:disabled){background-color:var(--color-accent-hover)}.btn-secondary[data-v-c81f69f0]{background-color:var(--color-bg-secondary);color:var(--color-text-primary)}.btn-secondary[data-v-c81f69f0]:hover:not(:disabled){background-color:var(--color-bg-tertiary)}.spinner[data-v-c81f69f0]{width:18px;height:18px;animation:spin-c81f69f0 1s linear infinite}.spinner circle[data-v-c81f69f0]{stroke-dasharray:60;stroke-dashoffset:45}@keyframes spin-c81f69f0{to{transform:rotate(360deg)}}.fade-enter-active[data-v-c81f69f0],.fade-leave-active[data-v-c81f69f0]{transition:opacity var(--transition-fast)}.fade-enter-from[data-v-c81f69f0],.fade-leave-to[data-v-c81f69f0]{opacity:0}.recommended-tags[data-v-c81f69f0]{display:flex;flex-direction:column;gap:var(--spacing-sm);margin-top:var(--spacing-xs)}.recommended-label[data-v-c81f69f0]{font-size:var(--font-size-xs);color:var(--color-text-secondary)}.tags-wrapper[data-v-c81f69f0]{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.tag-chip[data-v-c81f69f0]{padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-sm);color:var(--color-text-secondary);background-color:var(--color-bg-tertiary);border:1px solid transparent;border-radius:var(--radius-round);cursor:pointer;transition:all var(--transition-fast)}.tag-chip[data-v-c81f69f0]:hover{color:var(--color-accent);background-color:var(--color-accent-light);border-color:var(--color-accent)}.settings-content[data-v-0b52d632]{display:flex;flex-direction:column;gap:var(--spacing-xl)}.setting-group[data-v-0b52d632]{display:flex;flex-direction:column;gap:var(--spacing-md)}.setting-header[data-v-0b52d632]{display:flex;align-items:center;justify-content:space-between}.setting-label[data-v-0b52d632]{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.setting-value[data-v-0b52d632]{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.column-options[data-v-0b52d632]{display:flex;gap:var(--spacing-sm)}.column-option[data-v-0b52d632]{flex:1;display:flex;flex-direction:column;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-bg-primary);cursor:pointer;transition:all var(--transition-fast)}.column-option[data-v-0b52d632]:hover{border-color:var(--color-accent);background-color:var(--color-accent-lighter)}.column-option.active[data-v-0b52d632]{border-color:var(--color-accent);background-color:var(--color-accent-light)}.column-preview[data-v-0b52d632]{display:flex;gap:2px;height:24px}.column-bar[data-v-0b52d632]{width:6px;background-color:var(--color-border);border-radius:2px;transition:background-color var(--transition-fast)}.column-option.active .column-bar[data-v-0b52d632]{background-color:var(--color-accent)}.column-label[data-v-0b52d632]{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.column-option.active .column-label[data-v-0b52d632]{color:var(--color-accent);font-weight:var(--font-weight-medium)}.sort-options[data-v-0b52d632]{display:flex;gap:var(--spacing-sm)}.sort-option[data-v-0b52d632]{flex:1;display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-bg-primary);font-size:var(--font-size-sm);color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast)}.sort-option[data-v-0b52d632]:hover{border-color:var(--color-accent);background-color:var(--color-accent-lighter)}.sort-option.active[data-v-0b52d632]{border-color:var(--color-accent);background-color:var(--color-accent-light);color:var(--color-accent)}.sort-icon[data-v-0b52d632]{width:18px;height:18px}.theme-options[data-v-0b52d632]{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--spacing-sm)}.theme-option[data-v-0b52d632]{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-bg-primary);font-size:var(--font-size-sm);color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast)}.theme-option[data-v-0b52d632]:hover{border-color:var(--color-accent);background-color:var(--color-accent-lighter)}.theme-option.active[data-v-0b52d632]{border-color:var(--color-accent);background-color:var(--color-accent-light);color:var(--color-accent)}.theme-preview[data-v-0b52d632]{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md);transition:all var(--transition-fast)}.theme-preview.light[data-v-0b52d632]{background-color:#f7f7f7;color:#1c1c1e}.theme-preview.dark[data-v-0b52d632]{background-color:#1c1c1e;color:#f7f7f7}.theme-preview.system[data-v-0b52d632]{background:linear-gradient(135deg,#f7f7f7 50%,#1c1c1e 50%);color:#6e6e73}.theme-preview.custom[data-v-0b52d632]{background-color:var(--color-accent);color:#fff}.theme-preview svg[data-v-0b52d632]{width:24px;height:24px}.color-picker-section[data-v-0b52d632]{margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--color-separator);display:flex;flex-direction:column;gap:var(--spacing-md)}.color-label[data-v-0b52d632]{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.color-picker-wrapper[data-v-0b52d632]{display:flex;align-items:center;gap:var(--spacing-md)}.color-picker[data-v-0b52d632]{width:48px;height:48px;padding:0;border:2px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;overflow:hidden}.color-picker[data-v-0b52d632]::-webkit-color-swatch-wrapper{padding:0}.color-picker[data-v-0b52d632]::-webkit-color-swatch{border:none;border-radius:var(--radius-sm)}.color-value[data-v-0b52d632]{font-family:var(--font-family-mono);font-size:var(--font-size-sm);color:var(--color-text-secondary);text-transform:uppercase}.preset-colors[data-v-0b52d632]{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.preset-color[data-v-0b52d632]{width:32px;height:32px;border-radius:var(--radius-md);border:2px solid transparent;cursor:pointer;transition:all var(--transition-fast)}.preset-color[data-v-0b52d632]:hover{transform:scale(1.1)}.preset-color.active[data-v-0b52d632]{border-color:var(--color-text-primary);box-shadow:0 0 0 2px var(--color-bg-primary)}.clear-tags-btn[data-v-0b52d632]{font-size:var(--font-size-sm);color:var(--color-accent);background:none;border:none;cursor:pointer;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);transition:all var(--transition-fast)}.clear-tags-btn[data-v-0b52d632]:hover{background-color:var(--color-accent-light)}.dialog-actions[data-v-0b52d632]{display:flex;justify-content:space-between;align-items:center}.actions-right[data-v-0b52d632]{display:flex;gap:var(--spacing-md)}.btn[data-v-0b52d632]{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);font-size:var(--font-size-md);font-weight:var(--font-weight-medium);border-radius:var(--radius-md);border:none;cursor:pointer;transition:all var(--transition-fast)}.btn-primary[data-v-0b52d632]{background-color:var(--color-accent);color:#fff}.btn-primary[data-v-0b52d632]:hover{background-color:var(--color-accent-hover);box-shadow:var(--shadow-hover)}.btn-secondary[data-v-0b52d632]{background-color:var(--color-bg-secondary);color:var(--color-text-primary)}.btn-secondary[data-v-0b52d632]:hover{background-color:var(--color-bg-tertiary)}.btn-text[data-v-0b52d632]{background:none;color:var(--color-text-secondary)}.btn-text[data-v-0b52d632]:hover{color:var(--color-text-primary);background-color:var(--color-bg-secondary)}.tag-selector[data-v-1c5140cd]{display:flex;flex-direction:column;gap:var(--spacing-md)}.tag-search[data-v-1c5140cd]{position:relative;display:flex;align-items:center}.search-icon[data-v-1c5140cd]{position:absolute;left:var(--spacing-md);width:18px;height:18px;color:var(--color-text-muted);pointer-events:none}.search-input[data-v-1c5140cd]{width:100%;height:40px;padding:var(--spacing-sm) var(--spacing-md) var(--spacing-sm) 42px;background-color:var(--color-bg-tertiary);border:1px solid var(--color-border-light);border-radius:var(--radius-md);font-size:var(--font-size-sm);color:var(--color-text-primary);transition:all var(--transition-fast)}.search-input[data-v-1c5140cd]:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-light)}.search-input[data-v-1c5140cd]::placeholder{color:var(--color-text-placeholder)}.tags-container[data-v-1c5140cd]{display:flex;flex-direction:column;gap:var(--spacing-sm)}.tags-list[data-v-1c5140cd]{display:flex;gap:var(--spacing-sm);overflow-x:auto;padding:var(--spacing-xs) 0;scrollbar-width:none;-ms-overflow-style:none}.tags-list[data-v-1c5140cd]::-webkit-scrollbar{display:none}.tags-wrap .tags-list[data-v-1c5140cd]{flex-wrap:wrap;overflow-x:visible}.tag-btn[data-v-1c5140cd]{display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);background-color:var(--color-bg-tertiary);border:1px solid var(--color-border-light);border-radius:var(--radius-pill);font-size:var(--font-size-sm);color:var(--color-text-primary);white-space:nowrap;transition:all var(--transition-fast);flex-shrink:0}.tag-btn[data-v-1c5140cd]:hover{background-color:var(--color-bg-secondary);border-color:var(--color-border)}.tag-btn.tag-selected[data-v-1c5140cd]{background-color:var(--color-accent-light);border-color:var(--color-accent);color:var(--color-accent)}.tag-btn[data-v-1c5140cd]:active{transform:scale(.97)}.tag-name[data-v-1c5140cd]{font-weight:var(--font-weight-medium)}.tag-count[data-v-1c5140cd]{font-size:var(--font-size-xs);color:var(--color-text-muted);background-color:var(--color-bg-elevated);padding:2px 6px;border-radius:var(--radius-pill)}.tag-selected .tag-count[data-v-1c5140cd]{background-color:var(--color-accent);color:#fff}.tag-check[data-v-1c5140cd]{width:14px;height:14px;color:var(--color-accent)}.tag-skeleton[data-v-1c5140cd]{width:80px;height:34px;background:linear-gradient(90deg,var(--color-bg-tertiary) 25%,var(--color-bg-secondary) 50%,var(--color-bg-tertiary) 75%);background-size:200% 100%;animation:skeleton-pulse-1c5140cd 1.5s ease-in-out infinite;border-radius:var(--radius-pill);flex-shrink:0}.tag-skeleton[data-v-1c5140cd]:nth-child(2){width:100px}.tag-skeleton[data-v-1c5140cd]:nth-child(3){width:70px}.tag-skeleton[data-v-1c5140cd]:nth-child(4){width:90px}.tag-skeleton[data-v-1c5140cd]:nth-child(5){width:60px}.tag-skeleton[data-v-1c5140cd]:nth-child(6){width:85px}@keyframes skeleton-pulse-1c5140cd{0%{background-position:200% 0}to{background-position:-200% 0}}.tags-empty[data-v-1c5140cd]{padding:var(--spacing-md);text-align:center;font-size:var(--font-size-sm);color:var(--color-text-muted)}.load-more-btn[data-v-1c5140cd]{align-self:center;padding:var(--spacing-sm) var(--spacing-lg);background-color:var(--color-bg-tertiary);border-radius:var(--radius-md);font-size:var(--font-size-sm);color:var(--color-accent);transition:all var(--transition-fast)}.load-more-btn[data-v-1c5140cd]:hover{background-color:var(--color-accent-light)}.selected-summary[data-v-1c5140cd]{display:flex;flex-wrap:wrap;align-items:center;gap:var(--spacing-sm);padding-top:var(--spacing-sm);border-top:1px solid var(--color-separator)}.summary-label[data-v-1c5140cd]{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.summary-tags[data-v-1c5140cd]{display:flex;flex-wrap:wrap;gap:var(--spacing-xs)}.summary-tag[data-v-1c5140cd]{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;background-color:var(--color-accent);border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:#fff;cursor:pointer;transition:all var(--transition-fast)}.summary-tag[data-v-1c5140cd]:hover{background-color:var(--color-accent-hover)}.summary-tag svg[data-v-1c5140cd]{width:12px;height:12px}.settings-content[data-v-70c11daf]{display:flex;flex-direction:column;gap:var(--spacing-xl)}.setting-group[data-v-70c11daf]{display:flex;flex-direction:column;gap:var(--spacing-sm)}.setting-header[data-v-70c11daf]{display:flex;justify-content:space-between;align-items:center}.setting-label[data-v-70c11daf]{font-weight:600;color:var(--color-text-primary)}.clear-tags-btn[data-v-70c11daf]{font-size:.875rem;color:var(--color-text-secondary);background:none;border:none;cursor:pointer;padding:0}.clear-tags-btn[data-v-70c11daf]:hover{color:var(--color-danger)}.dialog-actions[data-v-70c11daf]{display:flex;justify-content:space-between;align-items:center;width:100%}.actions-right[data-v-70c11daf]{display:flex;gap:var(--spacing-md)}.btn[data-v-70c11daf]{padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--radius-md);font-weight:500;cursor:pointer;transition:all var(--transition-fast);border:none}.btn-text[data-v-70c11daf]{background:none;color:var(--color-text-secondary);padding-left:0}.btn-text[data-v-70c11daf]:hover{color:var(--color-text-primary)}.btn-secondary[data-v-70c11daf]{background:var(--color-bg-secondary);color:var(--color-text-primary)}.btn-secondary[data-v-70c11daf]:hover{background:var(--color-bg-tertiary)}.btn-primary[data-v-70c11daf]{background:var(--color-accent);color:#fff}.btn-primary[data-v-70c11daf]:hover{filter:brightness(1.1)}.user-list[data-v-70c11daf]{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:var(--spacing-sm)}.user-item[data-v-70c11daf]{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-sm) var(--spacing-md);background:var(--color-bg-secondary);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);border:1px solid transparent}.user-item[data-v-70c11daf]:hover{background:var(--color-bg-tertiary)}.user-item.active[data-v-70c11daf]{background:var(--color-accent-light);color:var(--color-accent);border-color:var(--color-accent)}.user-name[data-v-70c11daf]{font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.check-icon[data-v-70c11daf]{font-size:.8rem;font-weight:700}.loading-text[data-v-70c11daf]{color:var(--color-text-secondary);font-size:.9rem;padding:var(--spacing-sm)}.search-box[data-v-70c11daf]{position:relative;display:flex;align-items:center}.search-icon[data-v-70c11daf]{position:absolute;left:var(--spacing-sm);width:16px;height:16px;color:var(--color-text-secondary)}.search-input[data-v-70c11daf]{width:100%;padding:var(--spacing-sm) var(--spacing-md);padding-left:calc(var(--spacing-sm) * 2 + 16px);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:.9rem;background:var(--color-bg-primary);color:var(--color-text-primary);transition:border-color var(--transition-fast)}.search-input[data-v-70c11daf]:focus{outline:none;border-color:var(--color-accent)}.no-results[data-v-70c11daf]{padding:var(--spacing-md);text-align:center;color:var(--color-text-secondary);font-size:.9rem;grid-column:1 / -1}.selected-summary[data-v-70c11daf]{margin-top:var(--spacing-sm);padding-top:var(--spacing-sm);border-top:1px solid var(--color-border-light)}.summary-label[data-v-70c11daf]{display:block;font-size:.8rem;color:var(--color-text-secondary);margin-bottom:var(--spacing-xs)}.summary-tags[data-v-70c11daf]{display:flex;flex-wrap:wrap;gap:var(--spacing-xs)}.summary-tag[data-v-70c11daf]{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;background:var(--color-accent-light);color:var(--color-accent);border-radius:var(--radius-sm);font-size:.8rem;cursor:pointer;transition:all var(--transition-fast)}.summary-tag[data-v-70c11daf]:hover{background:var(--color-bg-danger-light);color:var(--color-danger)}.summary-tag svg[data-v-70c11daf]{width:12px;height:12px}.liked-filter-btn[data-v-70c11daf]{width:100%;padding:var(--spacing-md);background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-fast);text-align:left;position:relative}.liked-filter-btn[data-v-70c11daf]:hover{background:var(--color-bg-tertiary);border-color:var(--color-accent);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.liked-filter-btn.active[data-v-70c11daf]{background:var(--color-accent-light);border-color:var(--color-accent);box-shadow:0 2px 8px #007aff26}.liked-filter-content[data-v-70c11daf]{display:flex;align-items:center;gap:var(--spacing-md)}.liked-icon-wrapper[data-v-70c11daf]{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:var(--color-bg-primary);border-radius:var(--radius-md);flex-shrink:0;transition:all var(--transition-fast)}.liked-filter-btn.active .liked-icon-wrapper[data-v-70c11daf]{background:var(--color-accent)}.liked-icon[data-v-70c11daf]{width:20px;height:20px;color:var(--color-text-secondary);transition:all var(--transition-fast)}.liked-filter-btn.active .liked-icon[data-v-70c11daf]{color:#fff}.liked-text-content[data-v-70c11daf]{flex:1;display:flex;flex-direction:column;gap:2px}.liked-label[data-v-70c11daf]{font-size:.95rem;font-weight:500;color:var(--color-text-primary)}.liked-description[data-v-70c11daf]{font-size:.8rem;color:var(--color-text-secondary);line-height:1.2}.liked-filter-btn.active .liked-label[data-v-70c11daf]{color:var(--color-accent);font-weight:600}.liked-filter-btn.active .liked-description[data-v-70c11daf]{color:var(--color-accent);opacity:.8}.liked-checkmark[data-v-70c11daf]{display:flex;align-items:center;justify-content:center;width:24px;height:24px;background:var(--color-accent);border-radius:var(--radius-round);flex-shrink:0;animation:checkmark-pop-70c11daf .2s cubic-bezier(.34,1.56,.64,1)}.liked-checkmark svg[data-v-70c11daf]{width:14px;height:14px;color:#fff}@keyframes checkmark-pop-70c11daf{0%{transform:scale(.8);opacity:0}to{transform:scale(1);opacity:1}}.profile-content[data-v-7efdeaba]{display:flex;flex-direction:column;gap:var(--spacing-lg)}.user-info[data-v-7efdeaba]{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-lg);background-color:var(--color-bg-secondary);border-radius:var(--radius-lg)}.avatar[data-v-7efdeaba]{width:56px;height:56px;border-radius:var(--radius-round);background-color:var(--color-accent-light);color:var(--color-accent);display:flex;align-items:center;justify-content:center}.avatar svg[data-v-7efdeaba]{width:32px;height:32px}.user-details[data-v-7efdeaba]{display:flex;flex-direction:column;gap:var(--spacing-xs)}.username[data-v-7efdeaba]{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.role-badge[data-v-7efdeaba]{display:inline-flex;padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);border-radius:var(--radius-pill);width:fit-content}.role-badge.admin[data-v-7efdeaba]{background-color:#ff950026;color:#ff9500}.role-badge.user[data-v-7efdeaba]{background-color:var(--color-accent-light);color:var(--color-accent)}.tabs[data-v-7efdeaba]{display:flex;gap:var(--spacing-sm);padding:var(--spacing-xs);background-color:var(--color-bg-secondary);border-radius:var(--radius-md)}.tab-btn[data-v-7efdeaba]{flex:1;padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);background:none;border:none;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast)}.tab-btn[data-v-7efdeaba]:hover{color:var(--color-text-primary)}.tab-btn.active[data-v-7efdeaba]{background-color:var(--color-bg-primary);color:var(--color-accent);box-shadow:var(--shadow-sm)}.form[data-v-7efdeaba]{display:flex;flex-direction:column;gap:var(--spacing-lg)}.form-group[data-v-7efdeaba]{display:flex;flex-direction:column;gap:var(--spacing-sm)}.form-label[data-v-7efdeaba]{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary)}.form-input[data-v-7efdeaba]{width:100%;padding:var(--spacing-md);font-size:var(--font-size-md);border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-bg-secondary);color:var(--color-text-primary);transition:all var(--transition-fast)}.form-input[data-v-7efdeaba]:focus{outline:none;border-color:var(--color-accent);background-color:var(--color-bg-primary);box-shadow:0 0 0 3px var(--color-accent-light)}.form-input[data-v-7efdeaba]:disabled{opacity:.6;cursor:not-allowed}.form-input[data-v-7efdeaba]::placeholder{color:var(--color-text-placeholder)}.form-hint[data-v-7efdeaba]{font-size:var(--font-size-xs);color:var(--color-text-muted)}.password-input-wrapper[data-v-7efdeaba]{position:relative}.password-input-wrapper .form-input[data-v-7efdeaba]{padding-right:48px}.password-toggle[data-v-7efdeaba]{position:absolute;right:var(--spacing-md);top:50%;transform:translateY(-50%);width:24px;height:24px;color:var(--color-text-secondary);background:none;border:none;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;transition:color var(--transition-fast)}.password-toggle[data-v-7efdeaba]:hover{color:var(--color-text-primary)}.password-toggle svg[data-v-7efdeaba]{width:20px;height:20px}.form-error[data-v-7efdeaba]{padding:var(--spacing-md);background-color:#ff3b301a;border-radius:var(--radius-md);color:var(--color-error);font-size:var(--font-size-sm)}.form-success[data-v-7efdeaba]{padding:var(--spacing-md);background-color:#34c7591a;border-radius:var(--radius-md);color:var(--color-success);font-size:var(--font-size-sm)}.btn[data-v-7efdeaba]{display:inline-flex;align-items:center;justify-content:center;padding:var(--spacing-md) var(--spacing-lg);font-size:var(--font-size-md);font-weight:var(--font-weight-medium);border-radius:var(--radius-md);border:none;cursor:pointer;transition:all var(--transition-fast)}.btn[data-v-7efdeaba]:disabled{opacity:.6;cursor:not-allowed}.btn-primary[data-v-7efdeaba]{background-color:var(--color-accent);color:#fff}.btn-primary[data-v-7efdeaba]:hover:not(:disabled){background-color:var(--color-accent-hover);box-shadow:var(--shadow-hover)}.btn-block[data-v-7efdeaba]{width:100%}.fade-enter-active[data-v-7efdeaba],.fade-leave-active[data-v-7efdeaba]{transition:opacity var(--transition-fast)}.fade-enter-from[data-v-7efdeaba],.fade-leave-to[data-v-7efdeaba]{opacity:0}.browse-settings-content[data-v-93f68f7b]{display:flex;flex-direction:column;gap:var(--spacing-xl);padding:var(--spacing-md)}.setting-group[data-v-93f68f7b]{display:flex;flex-direction:column;gap:var(--spacing-sm)}.setting-header[data-v-93f68f7b]{display:flex;justify-content:space-between;align-items:center}.setting-label[data-v-93f68f7b]{font-weight:600;color:var(--color-text-primary)}.setting-value[data-v-93f68f7b]{font-size:.875rem;color:var(--color-text-secondary)}.column-options[data-v-93f68f7b]{display:flex;gap:var(--spacing-sm)}.column-option[data-v-93f68f7b]{flex:1;display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-secondary);color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast)}.column-option[data-v-93f68f7b]:hover{background:var(--color-bg-tertiary);color:var(--color-text-primary)}.column-option.active[data-v-93f68f7b]{border-color:var(--color-accent);background:var(--color-accent-light);color:var(--color-accent)}.column-preview[data-v-93f68f7b]{display:flex;gap:2px;height:20px;align-items:flex-end}.column-bar[data-v-93f68f7b]{width:4px;background:currentColor;border-radius:1px;opacity:.5}.column-bar[data-v-93f68f7b]:nth-child(odd){height:60%}.column-bar[data-v-93f68f7b]:nth-child(2n){height:100%}.column-label[data-v-93f68f7b]{font-size:.75rem;font-weight:500}.sort-options[data-v-93f68f7b]{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-sm)}.sort-option[data-v-93f68f7b]{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-secondary);color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast);font-size:.875rem}.sort-option[data-v-93f68f7b]:hover{background:var(--color-bg-tertiary);color:var(--color-text-primary)}.sort-option.active[data-v-93f68f7b]{border-color:var(--color-accent);background:var(--color-accent-light);color:var(--color-accent)}.sort-icon[data-v-93f68f7b]{width:20px;height:20px}.theme-options[data-v-93f68f7b]{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--spacing-sm)}.theme-option[data-v-93f68f7b]{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-secondary);color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast);font-size:.875rem}.theme-option[data-v-93f68f7b]:hover{background:var(--color-bg-tertiary);color:var(--color-text-primary)}.theme-option.active[data-v-93f68f7b]{border-color:var(--color-accent);background:var(--color-accent-light);color:var(--color-accent)}.theme-preview[data-v-93f68f7b]{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--color-bg-primary);color:var(--color-text-primary)}.theme-option.active .theme-preview[data-v-93f68f7b]{color:var(--color-accent)}.theme-preview.light[data-v-93f68f7b]{background:#f5f5f7;color:#1d1d1f}.theme-preview.dark[data-v-93f68f7b]{background:#1d1d1f;color:#f5f5f7}.theme-preview.system[data-v-93f68f7b]{background:linear-gradient(135deg,#f5f5f7 50%,#1d1d1f 50%);color:#86868b}.theme-preview.custom[data-v-93f68f7b]{background:var(--color-bg-primary);border:1px solid var(--color-border)}.color-picker-section[data-v-93f68f7b]{margin-top:var(--spacing-sm);padding:var(--spacing-md);background:var(--color-bg-secondary);border-radius:var(--radius-md)}.color-label[data-v-93f68f7b]{display:block;font-size:.875rem;font-weight:500;margin-bottom:var(--spacing-sm)}.color-picker-wrapper[data-v-93f68f7b]{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.color-picker[data-v-93f68f7b]{-webkit-appearance:none;width:40px;height:40px;border:none;border-radius:50%;overflow:hidden;cursor:pointer;padding:0}.color-picker[data-v-93f68f7b]::-webkit-color-swatch-wrapper{padding:0}.color-picker[data-v-93f68f7b]::-webkit-color-swatch{border:none;border-radius:50%;border:2px solid var(--color-border)}.color-value[data-v-93f68f7b]{font-family:monospace;color:var(--color-text-secondary)}.preset-colors[data-v-93f68f7b]{display:flex;flex-wrap:wrap;gap:var(--spacing-xs)}.preset-color[data-v-93f68f7b]{width:24px;height:24px;border-radius:50%;border:2px solid transparent;cursor:pointer;transition:transform var(--transition-fast)}.preset-color[data-v-93f68f7b]:hover{transform:scale(1.1)}.preset-color.active[data-v-93f68f7b]{border-color:var(--color-text-primary);transform:scale(1.1)}.actions-footer[data-v-93f68f7b]{display:flex;justify-content:flex-start;padding-top:var(--spacing-md);border-top:1px solid var(--color-border)}.btn-text[data-v-93f68f7b]{background:none;border:none;color:var(--color-text-secondary);cursor:pointer;padding:0;font-size:.875rem}.btn-text[data-v-93f68f7b]:hover{color:var(--color-text-primary)}.profile-content[data-v-425de51f]{display:flex;flex-direction:column;gap:var(--spacing-lg);padding:var(--spacing-md)}.user-info[data-v-425de51f]{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--color-bg-secondary);border-radius:var(--radius-lg)}.avatar[data-v-425de51f]{width:64px;height:64px;border-radius:50%;background:var(--color-bg-tertiary);color:var(--color-text-secondary)}.badges[data-v-425de51f]{display:flex;gap:var(--spacing-xs);flex-wrap:wrap}.username[data-v-425de51f]{font-size:1.25rem;font-weight:600;color:var(--color-text-primary)}.role-badge[data-v-425de51f]{display:inline-block;padding:2px 8px;border-radius:var(--radius-sm);font-size:.75rem;font-weight:500;background:var(--color-bg-tertiary);color:var(--color-text-secondary)}.role-badge.admin[data-v-425de51f]{background:var(--color-accent-light);color:var(--color-accent)}.role-badge.email-badge[data-v-425de51f]{background:var(--color-bg-tertiary);color:var(--color-text-secondary)}.role-badge.email-badge.verified[data-v-425de51f]{background:#dcfce7;color:#166534}.settings-container[data-v-425de51f]{display:flex;flex-direction:column;gap:var(--spacing-xl)}.settings-section[data-v-425de51f]{display:flex;flex-direction:column;gap:var(--spacing-md)}.sub-section-title[data-v-425de51f]{font-size:1.125rem;font-weight:600;color:var(--color-text-primary);margin-bottom:var(--spacing-xs);padding-bottom:var(--spacing-xs);border-bottom:1px solid var(--color-border)}.form[data-v-425de51f]{display:flex;flex-direction:column;gap:var(--spacing-md)}.form-group[data-v-425de51f]{display:flex;flex-direction:column;gap:var(--spacing-xs)}.form-label[data-v-425de51f]{font-size:.875rem;font-weight:500;color:var(--color-text-primary)}.form-input[data-v-425de51f]{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-primary);color:var(--color-text-primary);font-size:1rem;transition:border-color var(--transition-fast)}.form-input[data-v-425de51f]:focus{outline:none;border-color:var(--color-accent)}.form-input[data-v-425de51f]:disabled{background:var(--color-bg-secondary);cursor:not-allowed}.form-hint[data-v-425de51f]{font-size:.75rem;color:var(--color-text-secondary)}.input-with-button[data-v-425de51f]{display:flex;gap:var(--spacing-sm)}.input-with-button .form-input[data-v-425de51f]{flex:1}.current-email-row[data-v-425de51f]{display:flex;gap:var(--spacing-md);align-items:center}.current-email[data-v-425de51f]{flex:1;padding:var(--spacing-sm) var(--spacing-md);background:var(--color-bg-secondary);border-radius:var(--radius-md);color:var(--color-text-primary);display:flex;align-items:center;gap:var(--spacing-sm)}.status-text[data-v-425de51f]{font-size:.875rem;color:var(--color-text-secondary)}.status-text.verified[data-v-425de51f]{color:var(--color-success)}.password-input-wrapper[data-v-425de51f]{position:relative;display:flex;align-items:center}.password-input-wrapper .form-input[data-v-425de51f]{width:100%;padding-right:40px}.password-toggle[data-v-425de51f]{position:absolute;right:8px;background:none;border:none;color:var(--color-text-secondary);cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center}.password-toggle[data-v-425de51f]:hover{color:var(--color-text-primary)}.password-toggle svg[data-v-425de51f]{width:20px;height:20px}.form-error[data-v-425de51f]{padding:var(--spacing-sm);background:#fee2e2;color:#ef4444;border-radius:var(--radius-md);font-size:.875rem}.form-success[data-v-425de51f]{padding:var(--spacing-sm);background:#dcfce7;color:#22c55e;border-radius:var(--radius-md);font-size:.875rem}.form-actions[data-v-425de51f]{display:flex;justify-content:flex-end;margin-top:var(--spacing-sm)}.btn[data-v-425de51f]{padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--radius-md);border:none;font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.btn-primary[data-v-425de51f]{background:var(--color-accent);color:#fff}.btn-primary[data-v-425de51f]:hover{filter:brightness(1.1)}.btn-primary[data-v-425de51f]:disabled{opacity:.7;cursor:not-allowed}.btn-secondary[data-v-425de51f]{background:var(--color-bg-tertiary);color:var(--color-text-primary);border:1px solid var(--color-border)}.btn-secondary[data-v-425de51f]:hover{background:var(--color-bg-elevated)}.fade-enter-active[data-v-425de51f],.fade-leave-active[data-v-425de51f]{transition:opacity .3s ease}.fade-enter-from[data-v-425de51f],.fade-leave-to[data-v-425de51f]{opacity:0}.tag-edit-content[data-v-7e5e8d02]{display:flex;flex-direction:column;gap:var(--spacing-xl)}.section[data-v-7e5e8d02]{display:flex;flex-direction:column;gap:var(--spacing-md)}.section-label[data-v-7e5e8d02]{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.photo-preview[data-v-7e5e8d02]{display:flex;gap:var(--spacing-md);padding:var(--spacing-md);background-color:var(--color-bg-secondary);border-radius:var(--radius-md)}.photo-preview img[data-v-7e5e8d02]{width:80px;height:80px;object-fit:cover;border-radius:var(--radius-sm)}.photo-info[data-v-7e5e8d02]{display:flex;flex-direction:column;gap:var(--spacing-xs);min-width:0}.photo-name[data-v-7e5e8d02]{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.photo-tags[data-v-7e5e8d02]{font-size:var(--font-size-xs);color:var(--color-text-secondary)}.photos-preview[data-v-7e5e8d02]{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.preview-item[data-v-7e5e8d02]{width:60px;height:60px;border-radius:var(--radius-sm);overflow:hidden}.preview-item img[data-v-7e5e8d02]{width:100%;height:100%;object-fit:cover}.preview-more[data-v-7e5e8d02]{width:60px;height:60px;display:flex;align-items:center;justify-content:center;background-color:var(--color-bg-secondary);border-radius:var(--radius-sm);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary)}.dialog-actions[data-v-7e5e8d02]{display:flex;justify-content:flex-end;gap:var(--spacing-md)}.btn[data-v-7e5e8d02]{display:inline-flex;align-items:center;justify-content:center;padding:var(--spacing-md) var(--spacing-lg);font-size:var(--font-size-md);font-weight:var(--font-weight-medium);border-radius:var(--radius-md);border:none;cursor:pointer;transition:all var(--transition-fast)}.btn[data-v-7e5e8d02]:disabled{opacity:.6;cursor:not-allowed}.btn-primary[data-v-7e5e8d02]{background-color:var(--color-accent);color:#fff}.btn-primary[data-v-7e5e8d02]:hover:not(:disabled){background-color:var(--color-accent-hover)}.btn-secondary[data-v-7e5e8d02]{background-color:var(--color-bg-secondary);color:var(--color-text-primary)}.btn-secondary[data-v-7e5e8d02]:hover:not(:disabled){background-color:var(--color-bg-tertiary)}.photo-manage-content[data-v-0a7f11af]{display:flex;flex-direction:column;height:100%;min-height:400px}.toolbar[data-v-0a7f11af]{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md);background-color:var(--color-bg-secondary);border-radius:var(--radius-md);margin-bottom:var(--spacing-md)}.toolbar-btn[data-v-0a7f11af]{display:inline-flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);background-color:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.toolbar-btn[data-v-0a7f11af]:hover:not(:disabled){border-color:var(--color-accent);color:var(--color-accent)}.toolbar-btn[data-v-0a7f11af]:disabled{opacity:.5;cursor:not-allowed}.toolbar-btn.primary[data-v-0a7f11af]{background-color:var(--color-accent);border-color:var(--color-accent);color:#fff}.toolbar-btn.primary[data-v-0a7f11af]:hover:not(:disabled){background-color:var(--color-accent-hover);border-color:var(--color-accent-hover);color:#fff}.toolbar-btn.danger[data-v-0a7f11af]{color:var(--color-error);border-color:var(--color-error)}.toolbar-btn.danger[data-v-0a7f11af]:hover:not(:disabled){background-color:var(--color-error);color:#fff}.toolbar-btn.active[data-v-0a7f11af]{border-color:var(--color-accent);color:var(--color-accent);background-color:var(--color-accent-light)}.toolbar-btn svg[data-v-0a7f11af]{width:18px;height:18px}.toolbar-divider[data-v-0a7f11af]{width:1px;height:24px;background-color:var(--color-border)}.toolbar-spacer[data-v-0a7f11af]{flex:1}.selected-count[data-v-0a7f11af]{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-right:var(--spacing-sm)}.filter-dropdown[data-v-0a7f11af]{position:relative}.filter-panel[data-v-0a7f11af]{position:absolute;top:100%;left:0;margin-top:var(--spacing-sm);width:320px;max-height:400px;padding:var(--spacing-md);background-color:var(--color-bg-elevated);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);z-index:var(--z-dropdown);overflow-y:auto}.photos-container[data-v-0a7f11af]{flex:1;overflow-y:auto;padding:var(--spacing-sm)}.photos-grid[data-v-0a7f11af]{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:var(--spacing-md)}.photo-item[data-v-0a7f11af]{position:relative;aspect-ratio:1;border-radius:var(--radius-md);overflow:hidden;cursor:pointer;transition:all var(--transition-fast)}.photo-item[data-v-0a7f11af]:hover{transform:scale(1.02);box-shadow:var(--shadow-lg)}.photo-item.selected[data-v-0a7f11af]{outline:3px solid var(--color-accent);outline-offset:2px}.photo-item img[data-v-0a7f11af]{width:100%;height:100%;object-fit:cover}.photo-checkbox[data-v-0a7f11af]{position:absolute;top:var(--spacing-sm);left:var(--spacing-sm);width:24px;height:24px;border-radius:var(--radius-sm);background-color:var(--color-bg-primary);border:2px solid var(--color-border);display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast)}.photo-item.selected .photo-checkbox[data-v-0a7f11af]{background-color:var(--color-accent);border-color:var(--color-accent);color:#fff}.photo-checkbox svg[data-v-0a7f11af]{width:16px;height:16px}.photo-overlay[data-v-0a7f11af]{position:absolute;bottom:0;left:0;right:0;padding:var(--spacing-sm);background:linear-gradient(transparent,#000000b3);opacity:0;transition:opacity var(--transition-fast)}.photo-item:hover .photo-overlay[data-v-0a7f11af]{opacity:1}.photo-name[data-v-0a7f11af]{font-size:var(--font-size-xs);color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.loading-state[data-v-0a7f11af],.empty-state[data-v-0a7f11af]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-md);height:100%;color:var(--color-text-secondary)}.loading-state svg[data-v-0a7f11af],.empty-state svg[data-v-0a7f11af]{width:64px;height:64px;opacity:.5}.spinner[data-v-0a7f11af]{animation:spin-0a7f11af 1s linear infinite}.spinner circle[data-v-0a7f11af]{stroke-dasharray:60;stroke-dashoffset:45}@keyframes spin-0a7f11af{to{transform:rotate(360deg)}}.loading-more[data-v-0a7f11af]{display:flex;justify-content:center;padding:var(--spacing-lg)}.loading-more svg[data-v-0a7f11af]{width:24px;height:24px;color:var(--color-text-secondary)}.photo-status-badge[data-v-0a7f11af]{position:absolute;top:var(--spacing-sm);right:var(--spacing-sm);padding:4px 8px;border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:600;color:#fff;z-index:2;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.photo-status-badge.pending[data-v-0a7f11af]{background-color:#ffc107cc}.photo-status-badge.rejected[data-v-0a7f11af]{background-color:#f44336cc}.confirm-message[data-v-0a7f11af]{font-size:var(--font-size-md);color:var(--color-text-primary);line-height:var(--line-height-normal)}.dialog-actions[data-v-0a7f11af]{display:flex;justify-content:flex-end;gap:var(--spacing-md)}.btn[data-v-0a7f11af]{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);font-size:var(--font-size-md);font-weight:var(--font-weight-medium);border-radius:var(--radius-md);border:none;cursor:pointer;transition:all var(--transition-fast)}.btn-primary[data-v-0a7f11af]{background-color:var(--color-accent);color:#fff}.btn-primary[data-v-0a7f11af]:hover{background-color:var(--color-accent-hover)}.btn-secondary[data-v-0a7f11af]{background-color:var(--color-bg-secondary);color:var(--color-text-primary)}.btn-secondary[data-v-0a7f11af]:hover{background-color:var(--color-bg-tertiary)}.btn-danger[data-v-0a7f11af]{background-color:var(--color-error);color:#fff}.btn-danger[data-v-0a7f11af]:hover:not(:disabled){background-color:#cc2929}.btn-danger[data-v-0a7f11af]:disabled{opacity:.6;cursor:not-allowed}.dropdown-enter-active[data-v-0a7f11af],.dropdown-leave-active[data-v-0a7f11af]{transition:all var(--transition-fast)}.dropdown-enter-from[data-v-0a7f11af],.dropdown-leave-to[data-v-0a7f11af]{opacity:0;transform:translateY(-8px)}.settings-container[data-v-77fc7aa1]{display:flex;height:80vh;min-height:600px;max-height:900px;overflow:hidden;background:var(--color-bg-elevated)}[data-v-77fc7aa1] .modal-container{max-width:1600px!important;width:95vw!important}.settings-sidebar[data-v-77fc7aa1]{width:100%;background:var(--color-bg-elevated);display:flex;flex-direction:column;border-right:1px solid var(--color-border)}.settings-nav[data-v-77fc7aa1]{flex:1;padding:var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-xs);overflow-y:auto}.nav-item[data-v-77fc7aa1]{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);border:none;background:transparent;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);text-align:left}.nav-item[data-v-77fc7aa1]:hover{background:var(--color-bg-tertiary)}.nav-item.active[data-v-77fc7aa1]{background:var(--color-bg-tertiary);color:var(--color-accent)}.nav-icon[data-v-77fc7aa1]{width:24px;height:24px;display:flex;align-items:center;justify-content:center;color:var(--color-text-secondary)}.nav-item.active .nav-icon[data-v-77fc7aa1]{color:var(--color-accent)}.nav-icon svg[data-v-77fc7aa1]{width:20px;height:20px}.nav-label[data-v-77fc7aa1]{flex:1;font-size:1rem;font-weight:500;color:var(--color-text-primary)}.nav-item.active .nav-label[data-v-77fc7aa1]{color:var(--color-accent)}.nav-arrow[data-v-77fc7aa1]{width:16px;height:16px;color:var(--color-text-tertiary);opacity:0;transition:opacity var(--transition-fast)}.nav-item.active .nav-arrow[data-v-77fc7aa1]{opacity:1}.sidebar-footer[data-v-77fc7aa1]{padding:var(--spacing-md);border-top:1px solid var(--color-border)}.logout-btn[data-v-77fc7aa1]{background:transparent;color:var(--color-danger)}.nav-item.logout-btn[data-v-77fc7aa1]:hover{background-color:var(--color-bg-danger-light)}.logout-icon[data-v-77fc7aa1],.logout-btn .nav-label[data-v-77fc7aa1]{color:var(--color-danger)}.settings-content[data-v-77fc7aa1]{flex:1;background:var(--color-bg-elevated);display:flex;flex-direction:column;overflow:hidden}.mobile-header[data-v-77fc7aa1]{display:none;align-items:center;padding:var(--spacing-sm);border-bottom:1px solid var(--color-border);background:var(--color-bg-elevated)}.back-btn[data-v-77fc7aa1]{display:flex;align-items:center;gap:4px;border:none;background:none;color:var(--color-accent);font-size:1rem;cursor:pointer;padding:var(--spacing-xs);flex-shrink:0;white-space:nowrap}.mobile-title[data-v-77fc7aa1]{flex:1;text-align:center;font-weight:600;margin-right:40px}.content-scroll[data-v-77fc7aa1]{flex:1;overflow-y:auto;padding:var(--spacing-md)}.empty-state[data-v-77fc7aa1]{display:flex;align-items:center;justify-content:center;height:100%;color:var(--color-text-tertiary)}@media (min-width: 768px){.settings-sidebar[data-v-77fc7aa1]{width:220px;flex-shrink:0}.settings-content[data-v-77fc7aa1]{display:flex!important}.nav-item[data-v-77fc7aa1]{background:transparent}.nav-item.active[data-v-77fc7aa1]{background:var(--color-bg-tertiary);color:inherit}}@media (max-width: 767px){.settings-container[data-v-77fc7aa1]{position:relative}.settings-sidebar[data-v-77fc7aa1]{width:100%;position:absolute;top:0;left:0;height:100%;z-index:1;transition:transform .3s ease;border-right:none;overflow-y:auto}.settings-nav[data-v-77fc7aa1]{flex:none;overflow-y:visible}.sidebar-footer[data-v-77fc7aa1]{border-top:none;padding-top:0}.settings-content[data-v-77fc7aa1]{width:100%;position:absolute;top:0;left:0;height:100%;z-index:2;transform:translate(100%);transition:transform .3s ease}.settings-sidebar.hidden-mobile[data-v-77fc7aa1]{transform:translate(-30%)}.settings-content.visible-mobile[data-v-77fc7aa1]{transform:translate(0)}.mobile-header[data-v-77fc7aa1]{display:flex}}.user-manage-content[data-v-445005b4]{display:flex;flex-direction:column;height:100%;min-height:300px}.toolbar[data-v-445005b4]{display:flex;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.toolbar-btn[data-v-445005b4]{display:inline-flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);background-color:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.toolbar-btn[data-v-445005b4]:hover{border-color:var(--color-accent);color:var(--color-accent)}.toolbar-btn.primary[data-v-445005b4]{background-color:var(--color-accent);border-color:var(--color-accent);color:#fff}.toolbar-btn.primary[data-v-445005b4]:hover{background-color:var(--color-accent-hover);border-color:var(--color-accent-hover)}.toolbar-btn svg[data-v-445005b4]{width:18px;height:18px}.toolbar-spacer[data-v-445005b4]{flex:1}.search-box[data-v-445005b4]{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background-color:var(--color-bg-secondary);border-radius:var(--radius-md);border:1px solid var(--color-border);transition:all var(--transition-fast)}.search-box[data-v-445005b4]:focus-within{border-color:var(--color-accent);background-color:var(--color-bg-primary)}.search-box svg[data-v-445005b4]{width:18px;height:18px;color:var(--color-text-muted)}.search-input[data-v-445005b4]{border:none;background:none;font-size:var(--font-size-sm);color:var(--color-text-primary);outline:none;width:200px}.search-input[data-v-445005b4]::placeholder{color:var(--color-text-placeholder)}.users-container[data-v-445005b4]{flex:1;overflow-y:auto}.users-list[data-v-445005b4]{display:flex;flex-direction:column;gap:var(--spacing-sm)}.user-item[data-v-445005b4]{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);background-color:var(--color-bg-secondary);border-radius:var(--radius-md);transition:all var(--transition-fast)}.user-item[data-v-445005b4]:hover{background-color:var(--color-bg-tertiary)}.user-avatar[data-v-445005b4]{width:48px;height:48px;border-radius:var(--radius-round);background-color:var(--color-accent-light);color:var(--color-accent);display:flex;align-items:center;justify-content:center;flex-shrink:0}.user-avatar svg[data-v-445005b4]{width:28px;height:28px}.user-info[data-v-445005b4]{flex:1;min-width:0}.user-name-row[data-v-445005b4]{display:flex;align-items:center;gap:var(--spacing-sm)}.user-display-name[data-v-445005b4]{font-size:var(--font-size-md);font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.user-username[data-v-445005b4]{font-size:var(--font-size-sm);color:var(--color-text-muted)}.role-badge[data-v-445005b4]{display:inline-flex;padding:2px var(--spacing-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);border-radius:var(--radius-pill)}.role-badge.admin[data-v-445005b4]{background-color:#ff950026;color:#ff9500}.role-badge.user[data-v-445005b4]{background-color:var(--color-accent-light);color:var(--color-accent)}.banned-badge[data-v-445005b4]{display:inline-flex;padding:2px var(--spacing-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);border-radius:var(--radius-pill);background-color:#ff3b3026;color:var(--color-error)}.user-actions[data-v-445005b4]{display:flex;gap:var(--spacing-sm)}.action-btn[data-v-445005b4]{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md);background-color:var(--color-bg-primary);border:1px solid var(--color-border);color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast)}.action-btn[data-v-445005b4]:hover{border-color:var(--color-accent);color:var(--color-accent)}.action-btn.danger[data-v-445005b4]:hover{border-color:var(--color-error);color:var(--color-error)}.action-btn.warning[data-v-445005b4]:hover{border-color:var(--color-warning);color:var(--color-warning)}.action-btn.success[data-v-445005b4]:hover{border-color:var(--color-success);color:var(--color-success)}.action-btn svg[data-v-445005b4]{width:18px;height:18px}.loading-state[data-v-445005b4],.empty-state[data-v-445005b4]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-md);height:100%;color:var(--color-text-secondary)}.loading-state svg[data-v-445005b4],.empty-state svg[data-v-445005b4]{width:64px;height:64px;opacity:.5}.spinner[data-v-445005b4]{animation:spin-445005b4 1s linear infinite}.spinner circle[data-v-445005b4]{stroke-dasharray:60;stroke-dashoffset:45}@keyframes spin-445005b4{to{transform:rotate(360deg)}}.form[data-v-445005b4]{display:flex;flex-direction:column;gap:var(--spacing-lg)}.form-group[data-v-445005b4]{display:flex;flex-direction:column;gap:var(--spacing-sm)}.form-label[data-v-445005b4]{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary)}.form-label .required[data-v-445005b4]{color:var(--color-error)}.form-input[data-v-445005b4]{width:100%;padding:var(--spacing-md);font-size:var(--font-size-md);border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-bg-secondary);color:var(--color-text-primary);transition:all var(--transition-fast)}.form-input[data-v-445005b4]:focus{outline:none;border-color:var(--color-accent);background-color:var(--color-bg-primary);box-shadow:0 0 0 3px var(--color-accent-light)}.form-input[data-v-445005b4]:disabled{opacity:.6;cursor:not-allowed}.form-input[data-v-445005b4]::placeholder{color:var(--color-text-placeholder)}.form-hint[data-v-445005b4]{font-size:var(--font-size-xs);color:var(--color-text-muted)}.form-error[data-v-445005b4]{padding:var(--spacing-md);background-color:#ff3b301a;border-radius:var(--radius-md);color:var(--color-error);font-size:var(--font-size-sm)}.confirm-message[data-v-445005b4]{font-size:var(--font-size-md);color:var(--color-text-primary);line-height:var(--line-height-normal)}.confirm-message strong[data-v-445005b4]{color:var(--color-accent)}.dialog-actions[data-v-445005b4]{display:flex;justify-content:flex-end;gap:var(--spacing-md)}.btn[data-v-445005b4]{display:inline-flex;align-items:center;justify-content:center;padding:var(--spacing-md) var(--spacing-lg);font-size:var(--font-size-md);font-weight:var(--font-weight-medium);border-radius:var(--radius-md);border:none;cursor:pointer;transition:all var(--transition-fast)}.btn[data-v-445005b4]:disabled{opacity:.6;cursor:not-allowed}.btn-primary[data-v-445005b4]{background-color:var(--color-accent);color:#fff}.btn-primary[data-v-445005b4]:hover:not(:disabled){background-color:var(--color-accent-hover)}.btn-secondary[data-v-445005b4]{background-color:var(--color-bg-secondary);color:var(--color-text-primary)}.btn-secondary[data-v-445005b4]:hover:not(:disabled){background-color:var(--color-bg-tertiary)}.btn-danger[data-v-445005b4]{background-color:var(--color-error);color:#fff}.btn-danger[data-v-445005b4]:hover:not(:disabled){background-color:#cc2929}.fade-enter-active[data-v-445005b4],.fade-leave-active[data-v-445005b4]{transition:opacity var(--transition-fast)}.fade-enter-from[data-v-445005b4],.fade-leave-to[data-v-445005b4]{opacity:0}.about-system[data-v-aa369e95]{max-width:800px;margin:0 auto}.header[data-v-aa369e95]{margin-bottom:var(--spacing-xl);text-align:center}.header h2[data-v-aa369e95]{font-size:1.5rem;font-weight:600;color:var(--color-text-primary);margin-bottom:var(--spacing-xs)}.subtitle[data-v-aa369e95]{color:var(--color-text-secondary);font-size:1rem}.content-section[data-v-aa369e95]{display:flex;flex-direction:column;gap:var(--spacing-lg)}.info-card[data-v-aa369e95]{background:var(--color-bg-secondary);border-radius:var(--radius-lg);padding:var(--spacing-lg);border:1px solid var(--color-border)}.info-card h3[data-v-aa369e95]{font-size:1.1rem;font-weight:600;margin-bottom:var(--spacing-md);color:var(--color-text-primary)}.info-card p[data-v-aa369e95]{color:var(--color-text-secondary);line-height:1.6;margin:0}.divider[data-v-aa369e95]{height:1px;background-color:var(--color-border);margin:var(--spacing-lg) 0}.info-subsection h4[data-v-aa369e95]{font-size:.9rem;font-weight:600;color:var(--color-text-tertiary);margin-bottom:var(--spacing-md);text-transform:uppercase;letter-spacing:.5px}.info-grid[data-v-aa369e95]{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-xl)}.version-info[data-v-aa369e95]{display:flex;flex-direction:column;gap:var(--spacing-sm)}.info-row[data-v-aa369e95]{display:flex;justify-content:space-between;padding:var(--spacing-xs) 0;border-bottom:1px solid var(--color-border)}.info-row[data-v-aa369e95]:last-child{border-bottom:none}.info-row .label[data-v-aa369e95]{color:var(--color-text-secondary)}.info-row .value[data-v-aa369e95]{font-family:monospace;color:var(--color-text-primary)}.tech-tags[data-v-aa369e95]{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.tag[data-v-aa369e95]{background:var(--color-bg-tertiary);color:var(--color-text-primary);padding:4px 12px;border-radius:var(--radius-full);font-size:.9rem}.opensource-info[data-v-aa369e95]{display:flex;flex-direction:column;gap:var(--spacing-sm)}.license-info[data-v-aa369e95]{display:flex;align-items:center;gap:var(--spacing-sm);font-size:.95rem}.license-info .label[data-v-aa369e95]{color:var(--color-text-secondary)}.license-info .value[data-v-aa369e95]{color:var(--color-text-primary);font-weight:500;background:var(--color-bg-tertiary);padding:2px 8px;border-radius:var(--radius-sm)}.github-link[data-v-aa369e95]{display:inline-flex;align-items:center;gap:var(--spacing-sm);color:var(--color-accent);text-decoration:none;font-weight:500;transition:color var(--transition-fast);width:fit-content}.github-link[data-v-aa369e95]:hover{color:var(--color-accent-hover);text-decoration:underline}.footer[data-v-aa369e95]{margin-top:var(--spacing-xl);text-align:center;color:var(--color-text-tertiary);font-size:.9rem}.site-settings[data-v-fe63ff22]{max-width:600px}.section-title[data-v-fe63ff22]{font-size:1.5rem;font-weight:600;margin-bottom:var(--spacing-lg);color:var(--color-text-primary)}.sub-section-title[data-v-fe63ff22]{font-size:1.25rem;font-weight:500;margin-top:calc(var(--spacing-xl) - var(--spacing-md));margin-bottom:calc(var(--spacing-md) - 36px);color:var(--color-text-primary)}.settings-form[data-v-fe63ff22]{display:flex;flex-direction:column;gap:var(--spacing-lg)}.form-group[data-v-fe63ff22]{display:flex;flex-direction:column;gap:var(--spacing-xs)}.form-group label[data-v-fe63ff22]{font-weight:500;color:var(--color-text-primary)}.form-input[data-v-fe63ff22]{padding:var(--spacing-sm);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-primary);color:var(--color-text-primary);font-size:1rem}.form-input[data-v-fe63ff22]:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent-transparent)}.setting-row[data-v-fe63ff22]{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-md)}.setting-info[data-v-fe63ff22]{display:flex;flex-direction:column;gap:4px}.setting-label[data-v-fe63ff22]{font-weight:500;color:var(--color-text-primary)}.switch[data-v-fe63ff22]{position:relative;display:inline-block;width:44px;height:24px;flex-shrink:0}.switch input[data-v-fe63ff22]{opacity:0;width:0;height:0}.slider[data-v-fe63ff22]{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:var(--color-bg-tertiary);transition:.3s;border-radius:24px;border:1px solid var(--color-border)}.slider[data-v-fe63ff22]:before{position:absolute;content:"";height:18px;width:18px;left:2px;bottom:2px;background-color:#fff;transition:.3s;border-radius:50%;box-shadow:0 2px 4px #0000001a}input:checked+.slider[data-v-fe63ff22]{background-color:var(--color-accent);border-color:var(--color-accent)}input:checked+.slider[data-v-fe63ff22]:before{transform:translate(20px)}input:focus+.slider[data-v-fe63ff22]{box-shadow:0 0 0 2px var(--color-accent-transparent)}.code-font[data-v-fe63ff22]{font-family:monospace;font-size:.9rem}.help-text[data-v-fe63ff22]{font-size:.875rem;color:var(--color-text-tertiary)}.preview-section[data-v-fe63ff22]{margin-top:var(--spacing-md);padding:var(--spacing-md);background:var(--color-bg-tertiary);border-radius:var(--radius-md)}.preview-box[data-v-fe63ff22]{margin-top:var(--spacing-sm);padding:var(--spacing-md);background:var(--color-bg-elevated);border-radius:var(--radius-md);display:flex;align-items:center}.logo-preview[data-v-fe63ff22]{display:flex;align-items:center;gap:var(--spacing-sm);color:var(--color-text-primary)}.logo-icon-wrapper[data-v-fe63ff22]{width:24px;height:24px;display:flex;align-items:center;justify-content:center}[data-v-fe63ff22] .logo-icon-wrapper img{width:100%;height:100%;object-fit:contain}.logo-text[data-v-fe63ff22]{font-weight:600;font-size:1.125rem}.form-actions[data-v-fe63ff22]{margin-top:var(--spacing-md);display:flex;justify-content:flex-end}.btn[data-v-fe63ff22]{padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--radius-md);border:none;font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.btn-primary[data-v-fe63ff22]{background:var(--color-accent);color:#fff}.btn-primary[data-v-fe63ff22]:hover{opacity:.9}.btn-secondary[data-v-fe63ff22]{background:var(--color-bg-tertiary);color:var(--color-text-primary);border:1px solid var(--color-border)}.btn-secondary[data-v-fe63ff22]:hover{background:var(--color-bg-elevated)}.btn[data-v-fe63ff22]:disabled{opacity:.5;cursor:not-allowed}.photo-review[data-v-29b125ee]{max-width:1000px;margin:0 auto}.section-title[data-v-29b125ee]{font-size:1.5rem;font-weight:600;margin-bottom:var(--spacing-lg);color:var(--color-text-primary)}.loading-state[data-v-29b125ee],.empty-state[data-v-29b125ee]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-xxl);color:var(--color-text-tertiary);gap:var(--spacing-md)}.spinner[data-v-29b125ee]{width:32px;height:32px;border:3px solid var(--color-border);border-top-color:var(--color-accent);border-radius:50%;animation:spin-29b125ee 1s linear infinite}@keyframes spin-29b125ee{to{transform:rotate(360deg)}}.empty-icon svg[data-v-29b125ee]{width:48px;height:48px;opacity:.5}.review-grid[data-v-29b125ee]{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:var(--spacing-lg);align-items:start}.review-card[data-v-29b125ee]{background:var(--color-bg-secondary);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm);display:flex;flex-direction:column}.review-image-wrapper[data-v-29b125ee]{position:relative;background:var(--color-bg-tertiary)}.review-image-wrapper img[data-v-29b125ee]{width:100%;height:auto;display:block}.review-info-overlay[data-v-29b125ee]{position:absolute;bottom:0;left:0;right:0;padding:var(--spacing-md);background:linear-gradient(to top,rgba(0,0,0,.8),transparent);color:#fff;font-size:var(--font-size-sm)}.info-row[data-v-29b125ee]{display:flex;align-items:center;gap:var(--spacing-xs);margin-bottom:4px}.info-label[data-v-29b125ee]{opacity:.8}.tags-list[data-v-29b125ee]{display:flex;flex-wrap:wrap;gap:4px}.tag-badge[data-v-29b125ee]{background:#fff3;padding:2px 6px;border-radius:4px;font-size:.75rem}.review-actions[data-v-29b125ee]{padding:var(--spacing-md);display:flex;gap:var(--spacing-md);background:var(--color-bg-elevated)}.btn[data-v-29b125ee]{flex:1;display:flex;align-items:center;justify-content:center;gap:var(--spacing-xs);padding:var(--spacing-sm);border:none;border-radius:var(--radius-md);font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.btn svg[data-v-29b125ee]{width:18px;height:18px}.btn-reject[data-v-29b125ee]{background:#f443361a;color:#f44336}.btn-reject[data-v-29b125ee]:hover:not(:disabled){background:#f4433633}.btn-approve[data-v-29b125ee]{background:#4caf501a;color:#4caf50}.btn-approve[data-v-29b125ee]:hover:not(:disabled){background:#4caf5033}.btn[data-v-29b125ee]:disabled{opacity:.5;cursor:not-allowed}.load-more[data-v-29b125ee]{margin-top:var(--spacing-xl);text-align:center}.btn-secondary[data-v-29b125ee]{background:var(--color-bg-tertiary);color:var(--color-text-primary);padding:var(--spacing-sm) var(--spacing-xl)}.header-row[data-v-29b125ee]{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg)}.header-row .section-title[data-v-29b125ee]{margin-bottom:0}.toolbar[data-v-29b125ee]{display:flex;align-items:center;gap:var(--spacing-md)}.selected-count[data-v-29b125ee]{font-size:var(--font-size-sm);color:var(--color-text-secondary);font-weight:500}.btn-sm[data-v-29b125ee]{padding:var(--spacing-xs) var(--spacing-md);font-size:var(--font-size-sm);flex:initial}.review-card[data-v-29b125ee]{position:relative;transition:transform var(--transition-fast),box-shadow var(--transition-fast);cursor:default}.review-card.is-selected[data-v-29b125ee]{box-shadow:0 0 0 2px var(--color-accent);transform:translateY(-2px)}.selection-overlay[data-v-29b125ee]{position:absolute;top:var(--spacing-sm);right:var(--spacing-sm);z-index:10}.checkbox[data-v-29b125ee]{width:24px;height:24px;border-radius:50%;border:2px solid rgba(255,255,255,.8);background:#0003;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast);cursor:pointer}.checkbox.checked[data-v-29b125ee]{background:var(--color-accent);border-color:var(--color-accent)}.checkbox svg[data-v-29b125ee]{width:16px;height:16px;color:#fff}.review-card:hover .checkbox[data-v-29b125ee]{border-color:#fff;background:#0006}.review-card:hover .checkbox.checked[data-v-29b125ee]{background:var(--color-accent);border-color:var(--color-accent)}.email-settings[data-v-f36c99c2]{max-width:600px}.section-title[data-v-f36c99c2]{font-size:1.5rem;font-weight:600;margin-bottom:var(--spacing-lg);color:var(--color-text-primary)}.sub-section-title[data-v-f36c99c2]{font-size:1.25rem;font-weight:500;margin-top:calc(var(--spacing-xl) - var(--spacing-md));margin-bottom:calc(var(--spacing-md) - 36px);color:var(--color-text-primary)}.settings-form[data-v-f36c99c2]{display:flex;flex-direction:column;gap:var(--spacing-lg)}.form-group[data-v-f36c99c2]{display:flex;flex-direction:column;gap:var(--spacing-xs)}.form-group label[data-v-f36c99c2]{font-weight:500;color:var(--color-text-primary)}.form-input[data-v-f36c99c2]{padding:var(--spacing-sm);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-primary);color:var(--color-text-primary);font-size:1rem}.form-input[data-v-f36c99c2]:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent-transparent)}.setting-row[data-v-f36c99c2]{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-md)}.setting-info[data-v-f36c99c2]{display:flex;flex-direction:column;gap:4px}.setting-label[data-v-f36c99c2]{font-weight:500;color:var(--color-text-primary)}.switch[data-v-f36c99c2]{position:relative;display:inline-block;width:44px;height:24px;flex-shrink:0}.switch input[data-v-f36c99c2]{opacity:0;width:0;height:0}.slider[data-v-f36c99c2]{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:var(--color-bg-tertiary);transition:.3s;border-radius:24px;border:1px solid var(--color-border)}.slider[data-v-f36c99c2]:before{position:absolute;content:"";height:18px;width:18px;left:2px;bottom:2px;background-color:#fff;transition:.3s;border-radius:50%;box-shadow:0 2px 4px #0000001a}input:checked+.slider[data-v-f36c99c2]{background-color:var(--color-accent);border-color:var(--color-accent)}input:checked+.slider[data-v-f36c99c2]:before{transform:translate(20px)}input:focus+.slider[data-v-f36c99c2]{box-shadow:0 0 0 2px var(--color-accent-transparent)}.help-text[data-v-f36c99c2]{font-size:.875rem;color:var(--color-text-tertiary)}.form-actions[data-v-f36c99c2]{margin-top:var(--spacing-md);display:flex;justify-content:flex-end}.btn[data-v-f36c99c2]{padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--radius-md);border:none;font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.btn-primary[data-v-f36c99c2]{background:var(--color-accent);color:#fff}.btn-primary[data-v-f36c99c2]:hover{opacity:.9}.btn-secondary[data-v-f36c99c2]{background:var(--color-bg-tertiary);color:var(--color-text-primary);border:1px solid var(--color-border)}.btn-secondary[data-v-f36c99c2]:hover{background:var(--color-bg-elevated)}.btn[data-v-f36c99c2]:disabled{opacity:.5;cursor:not-allowed}.test-email-row[data-v-f36c99c2]{display:flex;gap:var(--spacing-sm)}.test-email-row .form-input[data-v-f36c99c2]{flex:1}.settings-container[data-v-7f525ddb]{display:flex;height:80vh;min-height:600px;max-height:900px;overflow:hidden;margin:calc(var(--spacing-md) * -1)}[data-v-7f525ddb] .modal-container{max-width:1600px!important;width:95vw!important}.settings-sidebar[data-v-7f525ddb]{width:100%;background-color:var(--color-bg-elevated);border-right:1px solid var(--color-border);display:flex;flex-direction:column}.settings-nav[data-v-7f525ddb]{flex:1;padding:var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-xs);overflow-y:auto}.nav-item[data-v-7f525ddb]{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);border:none;background:transparent;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);text-align:left}.nav-item[data-v-7f525ddb]:hover{background:var(--color-bg-tertiary)}.nav-item.active[data-v-7f525ddb]{background:var(--color-bg-tertiary);color:var(--color-accent)}.nav-icon[data-v-7f525ddb]{width:24px;height:24px;display:flex;align-items:center;justify-content:center;color:var(--color-text-secondary)}.nav-item.active .nav-icon[data-v-7f525ddb]{color:var(--color-accent)}.nav-icon svg[data-v-7f525ddb]{width:20px;height:20px}.nav-label[data-v-7f525ddb]{flex:1;font-size:1rem;font-weight:500;color:var(--color-text-primary)}.nav-item.active .nav-label[data-v-7f525ddb]{color:var(--color-accent)}.nav-arrow[data-v-7f525ddb]{width:16px;height:16px;color:var(--color-text-tertiary);opacity:0;transition:opacity var(--transition-fast)}.nav-item.active .nav-arrow[data-v-7f525ddb]{opacity:1}.settings-content[data-v-7f525ddb]{flex:1;background:var(--color-bg-elevated);display:flex;flex-direction:column;overflow:hidden}.mobile-header[data-v-7f525ddb]{display:none;align-items:center;padding:var(--spacing-sm);border-bottom:1px solid var(--color-border);background:var(--color-bg-elevated)}.back-btn[data-v-7f525ddb]{display:flex;align-items:center;gap:4px;border:none;background:none;color:var(--color-accent);font-size:1rem;cursor:pointer;padding:var(--spacing-xs);flex-shrink:0;white-space:nowrap}.mobile-title[data-v-7f525ddb]{flex:1;text-align:center;font-weight:600;margin-right:40px}.content-scroll[data-v-7f525ddb]{flex:1;overflow-y:auto;padding:var(--spacing-lg)}.empty-state[data-v-7f525ddb]{display:flex;align-items:center;justify-content:center;height:100%;color:var(--color-text-tertiary)}@media (min-width: 768px){.settings-sidebar[data-v-7f525ddb]{width:220px;flex-shrink:0}.settings-content[data-v-7f525ddb]{display:flex!important}.nav-item[data-v-7f525ddb]{background:transparent}.nav-item.active[data-v-7f525ddb]{background:var(--color-bg-tertiary);color:inherit}}@media (max-width: 767px){.settings-container[data-v-7f525ddb]{position:relative}.settings-sidebar[data-v-7f525ddb]{width:100%;position:absolute;top:0;left:0;height:100%;z-index:1;transition:transform .3s ease;border-right:none}.settings-content[data-v-7f525ddb]{width:100%;position:absolute;top:0;left:0;height:100%;z-index:2;transform:translate(100%);transition:transform .3s ease}.settings-sidebar.hidden-mobile[data-v-7f525ddb]{transform:translate(-30%)}.settings-content.visible-mobile[data-v-7f525ddb]{transform:translate(0)}.mobile-header[data-v-7f525ddb]{display:flex}}.app[data-v-28a7583a]{position:relative;min-height:100vh;background-color:var(--color-bg-primary);color:var(--color-text-primary)}.confirm-message[data-v-28a7583a]{font-size:var(--font-size-md);color:var(--color-text-primary);line-height:var(--line-height-normal)}.dialog-actions[data-v-28a7583a]{display:flex;justify-content:flex-end;gap:var(--spacing-md)}.btn[data-v-28a7583a]{display:inline-flex;align-items:center;justify-content:center;padding:var(--spacing-md) var(--spacing-lg);font-size:var(--font-size-md);font-weight:var(--font-weight-medium);border-radius:var(--radius-md);border:none;cursor:pointer;transition:all var(--transition-fast)}.btn[data-v-28a7583a]:disabled{opacity:.6;cursor:not-allowed}.btn-secondary[data-v-28a7583a]{background-color:var(--color-bg-secondary);color:var(--color-text-primary)}.btn-secondary[data-v-28a7583a]:hover:not(:disabled){background-color:var(--color-bg-tertiary)}.btn-danger[data-v-28a7583a]{background-color:var(--color-error);color:#fff}.btn-danger[data-v-28a7583a]:hover:not(:disabled){background-color:#cc2929}:root{--color-accent: #007AFF;--color-accent-hover: #0056CC;--color-accent-active: #004AAD;--color-accent-light: rgba(0, 122, 255, .1);--color-accent-lighter: rgba(0, 122, 255, .05);--color-bg-primary: #ffffff;--color-bg-secondary: #f7f7f7;--color-bg-tertiary: #f2f2f7;--color-bg-elevated: #ffffff;--color-bg-page: #f0f0f0;--color-text-primary: #1c1c1e;--color-text-secondary: #6e6e73;--color-text-muted: #aeaeb2;--color-text-placeholder: #c7c7cc;--color-border: #d1d1d6;--color-border-light: #e5e5ea;--color-separator: rgba(60, 60, 67, .12);--color-overlay: rgba(0, 0, 0, .4);--color-shadow: rgba(0, 0, 0, .08);--color-shadow-medium: rgba(0, 0, 0, .12);--color-shadow-heavy: rgba(0, 0, 0, .16);--shadow-sm: 0 1px 3px var(--color-shadow);--shadow-md: 0 2px 8px var(--color-shadow-medium);--shadow-lg: 0 4px 16px var(--color-shadow-medium);--shadow-xl: 0 8px 32px var(--color-shadow-heavy);--shadow-hover: 0 4px 12px var(--color-shadow-medium);--shadow-active: 0 1px 4px var(--color-shadow);--color-success: #34C759;--color-warning: #FF9500;--color-error: #FF3B30;--color-info: #5AC8FA;--color-danger: var(--color-error);--color-bg-danger-light: rgba(255, 59, 48, .1);--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--spacing-xxl: 48px;--spacing-section: 20px;--radius-xs: 6px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 20px;--radius-xxl: 24px;--radius-round: 50%;--radius-pill: 9999px;--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-normal: .25s cubic-bezier(.4, 0, .2, 1);--transition-slow: .35s cubic-bezier(.4, 0, .2, 1);--transition-bounce: .5s cubic-bezier(.34, 1.56, .64, 1);--font-family: -apple-system, BlinkMacSystemFont, "SF Pro Display", "SF Pro Text", "Helvetica Neue", Arial, sans-serif;--font-family-mono: "SF Mono", SFMono-Regular, Menlo, Monaco, Consolas, monospace;--font-size-xs: 12px;--font-size-sm: 14px;--font-size-md: 16px;--font-size-lg: 18px;--font-size-xl: 20px;--font-size-xxl: 24px;--font-size-title: 28px;--font-size-largetitle: 34px;--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-tight: 1.2;--line-height-normal: 1.5;--line-height-relaxed: 1.75;--z-dropdown: 100;--z-sticky: 200;--z-modal-backdrop: 1100;--z-modal: 1200;--z-popover: 1300;--z-tooltip: 1400;--sidebar-width: 72px;--sidebar-expanded-width: 220px;--photo-gap: 16px;--photo-card-radius: 12px}[data-theme=dark]{--color-accent: #0A84FF;--color-accent-hover: #409CFF;--color-accent-active: #0066CC;--color-accent-light: rgba(10, 132, 255, .2);--color-accent-lighter: rgba(10, 132, 255, .1);--color-bg-primary: #000000;--color-bg-secondary: #1c1c1e;--color-bg-tertiary: #2c2c2e;--color-bg-elevated: #1c1c1e;--color-bg-page: #1b1b1b;--color-text-primary: #ffffff;--color-text-secondary: #98989d;--color-text-muted: #636366;--color-text-placeholder: #48484a;--color-border: #38383a;--color-border-light: #2c2c2e;--color-separator: rgba(84, 84, 88, .65);--color-overlay: rgba(0, 0, 0, .6);--color-shadow: rgba(0, 0, 0, .3);--color-shadow-medium: rgba(0, 0, 0, .4);--color-shadow-heavy: rgba(0, 0, 0, .5);--color-success: #30D158;--color-warning: #FF9F0A;--color-error: #FF453A;--color-info: #64D2FF;--color-danger: var(--color-error);--color-bg-danger-light: rgba(255, 69, 58, .15)}[data-theme=custom]{--color-accent: var(--custom-accent-color, #007AFF);--color-accent-hover: var(--custom-accent-hover, #0056CC);--color-accent-light: var(--custom-accent-light, rgba(0, 122, 255, .1))}[data-theme=custom-dark]{--color-bg-primary: #000000;--color-bg-secondary: #1c1c1e;--color-bg-tertiary: #2c2c2e;--color-bg-elevated: #1c1c1e;--color-bg-page: #1b1b1b;--color-text-primary: #ffffff;--color-text-secondary: #98989d;--color-text-muted: #636366;--color-text-placeholder: #48484a;--color-border: #38383a;--color-border-light: #2c2c2e;--color-separator: rgba(84, 84, 88, .65);--color-overlay: rgba(0, 0, 0, .6);--color-shadow: rgba(0, 0, 0, .3);--color-shadow-medium: rgba(0, 0, 0, .4);--color-shadow-heavy: rgba(0, 0, 0, .5);--color-accent: var(--custom-accent-color, #0A84FF);--color-accent-hover: var(--custom-accent-hover, #409CFF);--color-accent-light: var(--custom-accent-light, rgba(10, 132, 255, .2))}html{transition:background-color var(--transition-normal),color var(--transition-normal)}html *:not(.no-transition){transition:background-color var(--transition-normal),border-color var(--transition-normal),box-shadow var(--transition-normal),color var(--transition-fast)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body{font-family:var(--font-family);font-size:var(--font-size-md);font-weight:var(--font-weight-regular);line-height:var(--line-height-normal);color:var(--color-text-primary);background-color:var(--color-bg-page);min-height:100vh;letter-spacing:-.01em}ul,ol{list-style:none}a{text-decoration:none;color:var(--color-accent);transition:opacity var(--transition-fast)}a:hover{opacity:.8}button{border:none;background:none;cursor:pointer;font-family:inherit;font-size:inherit;-webkit-tap-highlight-color:transparent}input,textarea,select{font-family:inherit;font-size:inherit;border:none;outline:none;background:none;-webkit-tap-highlight-color:transparent}img{max-width:100%;height:auto;display:block}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--color-text-muted);border-radius:var(--radius-pill)}::-webkit-scrollbar-thumb:hover{background:var(--color-text-secondary)}::selection{background-color:var(--color-accent-light);color:var(--color-accent)}:focus-visible{outline:none;box-shadow:0 0 0 4px var(--color-accent-light)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.text-ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--radius-md);font-weight:var(--font-weight-medium);font-size:var(--font-size-md);line-height:1.2;transition:all var(--transition-fast);cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.btn-primary{background-color:var(--color-accent);color:#fff;box-shadow:var(--shadow-sm)}.btn-primary:hover{background-color:var(--color-accent-hover);box-shadow:var(--shadow-hover);transform:translateY(-1px)}.btn-primary:active{background-color:var(--color-accent-active);box-shadow:var(--shadow-active);transform:translateY(0)}.btn-secondary{background-color:var(--color-bg-elevated);color:var(--color-accent);border:1px solid var(--color-border-light);box-shadow:var(--shadow-sm)}.btn-secondary:hover{background-color:var(--color-bg-secondary);box-shadow:var(--shadow-hover);transform:translateY(-1px)}.btn-secondary:active{background-color:var(--color-bg-tertiary);box-shadow:var(--shadow-active);transform:translateY(0)}.btn-ghost{background-color:transparent;color:var(--color-accent)}.btn-ghost:hover{background-color:var(--color-accent-light)}.btn-ghost:active{background-color:var(--color-accent-lighter)}.btn-danger{background-color:var(--color-error);color:#fff;box-shadow:var(--shadow-sm)}.btn-danger:hover{opacity:.9;box-shadow:var(--shadow-hover);transform:translateY(-1px)}.btn-danger:active{opacity:1;box-shadow:var(--shadow-active);transform:translateY(0)}.btn-sm{padding:var(--spacing-xs) var(--spacing-md);font-size:var(--font-size-sm);border-radius:var(--radius-sm)}.btn-lg{padding:var(--spacing-md) var(--spacing-xl);font-size:var(--font-size-lg);border-radius:var(--radius-lg)}.input{width:100%;padding:var(--spacing-md);border:none;border-radius:var(--radius-md);background-color:var(--color-bg-secondary);color:var(--color-text-primary);font-size:var(--font-size-md);transition:all var(--transition-fast);box-shadow:inset 0 0 0 1px var(--color-border-light)}.input:hover{background-color:var(--color-bg-tertiary)}.input:focus{background-color:var(--color-bg-primary);box-shadow:inset 0 0 0 2px var(--color-accent),var(--shadow-sm)}.input::placeholder{color:var(--color-text-placeholder)}.input-bordered{background-color:var(--color-bg-primary);border:1px solid var(--color-border)}.input-bordered:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-light)}.card{background-color:var(--color-bg-elevated);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);overflow:hidden}.card-padded{padding:var(--spacing-lg)}.separator{height:1px;background-color:var(--color-separator);margin:var(--spacing-md) 0}.list-group{background-color:var(--color-bg-elevated);border-radius:var(--radius-lg);overflow:hidden}.list-item{display:flex;align-items:center;padding:var(--spacing-md) var(--spacing-lg);background-color:var(--color-bg-elevated);transition:background-color var(--transition-fast)}.list-item:not(:last-child){border-bottom:1px solid var(--color-separator)}.list-item:hover{background-color:var(--color-bg-secondary)}.list-item:active{background-color:var(--color-bg-tertiary)}
