.folder-tree-item[data-v-6d20e549]{align-items:center;border-radius:6px;color:var(--text-primary);cursor:pointer;display:flex;font-weight:500;padding:8px;padding-left:calc(8px + var(--depth-indent, 0px));position:relative;transition:background .12s cubic-bezier(.22,1,.36,1),color .12s cubic-bezier(.22,1,.36,1)}.folder-tree-item[data-v-6d20e549]:hover{background:var(--surface-selected)}.folder-tree-item[data-v-6d20e549]:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.folder-tree-item[data-v-6d20e549]:active{background:var(--primary-medium);transform:scale(.98)}.folder-tree-item.selected[data-v-6d20e549]{background:var(--primary);color:var(--text-inverse)}.folder-tree-item.selected[data-v-6d20e549]:hover{background:var(--primary-hover)}.folder-icon[data-v-6d20e549]{color:var(--primary);flex-shrink:0;text-align:center;width:20px}.folder-icon[data-v-6d20e549],.folder-icon--emoji[data-v-6d20e549]{font-size:16px}.folder-tree-item.selected .folder-icon[data-v-6d20e549]{color:inherit}.folder-name[data-v-6d20e549]{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.folder-lock[data-v-6d20e549]{color:var(--text-tertiary);font-size:12px}.folder-lock[data-v-6d20e549],.folder-toggle[data-v-6d20e549]{align-items:center;display:inline-flex;flex-shrink:0;margin-left:2px}.folder-toggle[data-v-6d20e549]{border-radius:6px;cursor:pointer}.folder-toggle[data-v-6d20e549]:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.login-dialog-overlay[data-v-fdaf1c22]{align-items:center;animation:login-dialog-fade-in-fdaf1c22 .24s cubic-bezier(.22,1,.36,1);background:var(--overlay);display:flex;inset:0;justify-content:center;position:fixed;z-index:1002}.login-dialog-content[data-v-fdaf1c22]{animation:login-dialog-scale-in-fdaf1c22 .24s cubic-bezier(.22,1,.36,1);background:var(--surface-raised);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-lg);max-width:420px;padding:32px;position:relative;text-align:center;width:90vw}@keyframes login-dialog-fade-in-fdaf1c22{0%{opacity:0}to{opacity:1}}@keyframes login-dialog-scale-in-fdaf1c22{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.login-logo[data-v-fdaf1c22]{margin-bottom:24px}.login-logo img[data-v-fdaf1c22]{height:48px;width:48px}.login-logo h1[data-v-fdaf1c22]{color:var(--text-primary);font-size:22px;margin-top:8px}.login-logo p[data-v-fdaf1c22]{color:var(--text-tertiary);font-size:13px;margin-top:4px}.close-button[data-v-fdaf1c22]{align-items:center;background:none;border:none;border-radius:6px;color:var(--text-secondary);cursor:pointer;display:inline-flex;font-size:22px;height:32px;justify-content:center;line-height:1;padding:0;position:absolute;right:12px;top:12px;transition:background-color .12s cubic-bezier(.22,1,.36,1),color .12s cubic-bezier(.22,1,.36,1),transform .12s cubic-bezier(.22,1,.36,1);width:32px;z-index:1}.close-button[data-v-fdaf1c22]:hover{background:var(--surface-hover);color:var(--text-primary)}.close-button[data-v-fdaf1c22]:active{transform:scale(.98)}.close-button[data-v-fdaf1c22]:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.tab-nav[data-v-fdaf1c22]{border-bottom:1px solid var(--border);display:flex;margin-bottom:20px}.tab-nav button[data-v-fdaf1c22]{background:none;border:none;border-bottom:2px solid transparent;border-radius:6px 6px 0 0;color:var(--text-tertiary);cursor:pointer;flex:1;font-size:14px;margin-bottom:-1px;padding:10px;transition:color .18s cubic-bezier(.22,1,.36,1),background-color .12s cubic-bezier(.22,1,.36,1),border-color .18s cubic-bezier(.22,1,.36,1)}.tab-nav button[data-v-fdaf1c22]:hover:not(.active){background:var(--surface-hover);color:var(--text-primary)}.tab-nav button[data-v-fdaf1c22]:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.tab-nav button.active[data-v-fdaf1c22]{border-bottom-color:var(--primary);color:var(--primary);font-weight:600}.form-group[data-v-fdaf1c22]{margin-bottom:16px;text-align:left}.form-group label[data-v-fdaf1c22]{color:var(--text-secondary);display:block;font-size:13px;margin-bottom:4px}.form-group input[data-v-fdaf1c22]{background:var(--surface-raised);border:1.5px solid var(--border);border-radius:10px;color:var(--text-primary);font-size:14px;outline:none;padding:12px 16px;transition:border-color .18s cubic-bezier(.22,1,.36,1);width:100%}.form-group input[data-v-fdaf1c22]:focus-visible{border-color:var(--primary);outline:2px solid var(--primary);outline-offset:2px}.submit-btn[data-v-fdaf1c22]{background:var(--primary);border:none;border-radius:10px;color:var(--text-inverse);cursor:pointer;font-size:14px;font-weight:600;margin-top:8px;padding:12px;transition:background-color .18s cubic-bezier(.22,1,.36,1),transform .12s cubic-bezier(.22,1,.36,1);width:100%}.submit-btn[data-v-fdaf1c22]:hover:not(:disabled){background:var(--primary-hover)}.submit-btn[data-v-fdaf1c22]:active:not(:disabled){transform:scale(.98)}.submit-btn[data-v-fdaf1c22]:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.submit-btn[data-v-fdaf1c22]:disabled{cursor:not-allowed;opacity:.6}.error-msg[data-v-fdaf1c22]{align-items:center;animation:login-dialog-error-in-fdaf1c22 .24s cubic-bezier(.22,1,.36,1);background:var(--danger-soft);border-left:3px solid var(--danger);border-radius:6px;color:var(--danger);display:flex;font-size:13px;gap:8px;margin-bottom:12px;padding:8px 12px;text-align:left}.error-msg[data-v-fdaf1c22]:before{align-items:center;background:var(--danger);border-radius:50%;color:var(--text-inverse);content:"!";display:inline-flex;flex-shrink:0;font-size:11px;font-weight:700;height:16px;justify-content:center;line-height:1;width:16px}@keyframes login-dialog-error-in-fdaf1c22{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.sidebar-user-panel[data-v-24a06e51]{position:relative}.sidebar-user-bar[data-v-24a06e51]{align-items:center;border-radius:6px;cursor:pointer;display:flex;gap:8px;padding:8px 10px;transition:background .12s cubic-bezier(.22,1,.36,1);-webkit-user-select:none;-moz-user-select:none;user-select:none}.sidebar-user-bar[data-v-24a06e51]:hover{background:var(--surface-hover)}.sidebar-user-bar[data-v-24a06e51]:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.sidebar-user-bar[data-v-24a06e51]:active{background:var(--surface-active)}.sidebar-user-avatar[data-v-24a06e51]{align-items:center;background:var(--primary);border-radius:50%;color:var(--text-inverse);display:flex;flex-shrink:0;font-size:12px;font-weight:600;height:28px;justify-content:center;width:28px}.sidebar-user-name[data-v-24a06e51]{color:var(--text-primary);flex:1;font-size:13px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-user-menu[data-v-24a06e51]{background:var(--surface-raised);border:1px solid var(--border);border-radius:14px;bottom:100%;box-shadow:var(--shadow-lg);left:0;margin-bottom:6px;padding:8px 0;position:absolute;right:0;z-index:1000}.user-menu-header[data-v-24a06e51]{align-items:center;display:flex;gap:10px;padding:10px 16px}.user-menu-avatar[data-v-24a06e51]{align-items:center;background:var(--primary);border-radius:50%;color:var(--text-inverse);display:flex;flex-shrink:0;font-size:14px;font-weight:600;height:36px;justify-content:center;width:36px}.user-menu-info[data-v-24a06e51]{display:flex;flex-direction:column;gap:2px}.user-menu-name[data-v-24a06e51]{color:var(--text-primary);font-size:13px;font-weight:600}.user-menu-role[data-v-24a06e51]{color:var(--text-secondary);font-size:11px}.user-menu-role.admin[data-v-24a06e51]{color:var(--primary)}.user-menu-role.guest[data-v-24a06e51]{color:var(--text-tertiary)}.user-menu-divider[data-v-24a06e51]{background:var(--border);height:1px;margin:4px 0}.user-menu-items[data-v-24a06e51]{padding:2px 0}.user-menu-item[data-v-24a06e51]{align-items:center;color:var(--text-primary);cursor:pointer;display:flex;font-size:13px;gap:10px;padding:8px 16px;text-decoration:none;transition:background .12s cubic-bezier(.22,1,.36,1)}.user-menu-item[data-v-24a06e51]:hover{background:var(--surface-hover)}.user-menu-item[data-v-24a06e51]:focus-visible{outline:2px solid var(--primary);outline-offset:-2px}.user-menu-item[data-v-24a06e51]:active{background:var(--surface-active);transform:scale(.98)}.user-menu-item i[data-v-24a06e51]{color:var(--text-secondary);font-size:16px;text-align:center;width:20px}.user-menu-item.danger[data-v-24a06e51],.user-menu-item.danger i[data-v-24a06e51]{color:var(--danger)}.user-menu-toggle[data-v-24a06e51]{background:var(--surface-sunken);border-radius:6px;color:var(--text-secondary);font-size:12px;margin-left:auto;padding:2px 8px}.user-menu-enter-active[data-v-24a06e51],.user-menu-leave-active[data-v-24a06e51]{transition:opacity .18s cubic-bezier(.22,1,.36,1),transform .18s cubic-bezier(.22,1,.36,1)}.user-menu-enter-from[data-v-24a06e51],.user-menu-leave-to[data-v-24a06e51]{opacity:0;transform:translateY(4px)}.sidebar-user-avatar.has-img[data-v-24a06e51],.user-menu-avatar.has-img[data-v-24a06e51]{background:transparent;overflow:hidden}.sidebar-user-avatar img[data-v-24a06e51],.user-menu-avatar img[data-v-24a06e51]{border-radius:50%;display:block;height:100%;-o-object-fit:cover;object-fit:cover;width:100%}.up-backdrop[data-v-24a06e51]{align-items:center;background:var(--overlay);display:flex;inset:0;justify-content:center;padding:16px;position:fixed;z-index:10060}.up-modal[data-v-24a06e51]{background:var(--surface-raised);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-lg);overflow:hidden;width:min(420px,100%)}.up-head[data-v-24a06e51]{align-items:center;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;padding:12px 16px}.up-head h3[data-v-24a06e51]{color:var(--text-primary);font-size:14px;font-weight:600;margin:0}.up-close[data-v-24a06e51]{background:transparent;border:none;border-radius:6px;color:var(--text-tertiary);cursor:pointer;font-size:18px;padding:2px 6px;transition:background .12s cubic-bezier(.22,1,.36,1),color .12s cubic-bezier(.22,1,.36,1)}.up-close[data-v-24a06e51]:hover{background:var(--surface-hover);color:var(--text-primary)}.up-close[data-v-24a06e51]:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.up-close[data-v-24a06e51]:active{background:var(--surface-active)}.up-body[data-v-24a06e51]{display:flex;flex-direction:column;gap:12px;padding:16px}.up-avatar-row[data-v-24a06e51]{gap:12px}.up-avatar[data-v-24a06e51],.up-avatar-row[data-v-24a06e51]{align-items:center;display:flex}.up-avatar[data-v-24a06e51]{background:var(--primary);border-radius:50%;color:var(--text-inverse);flex-shrink:0;font-size:18px;font-weight:600;height:48px;justify-content:center;overflow:hidden;width:48px}.up-avatar.has-img[data-v-24a06e51]{background:transparent}.up-avatar img[data-v-24a06e51]{display:block;height:100%;-o-object-fit:cover;object-fit:cover;width:100%}.up-avatar-copy[data-v-24a06e51]{display:flex;flex-direction:column;gap:2px}.up-avatar-title[data-v-24a06e51]{color:var(--text-primary);font-size:13px;font-weight:500}.up-avatar-sub[data-v-24a06e51]{color:var(--text-tertiary);font-size:12px}.up-field[data-v-24a06e51]{display:flex;flex-direction:column;gap:4px}.up-label[data-v-24a06e51]{color:var(--text-secondary);font-size:12px}.up-input[data-v-24a06e51]{background:var(--surface-sunken);border:1px solid var(--border);border-radius:6px;color:var(--text-primary);font-family:inherit;font-size:13px;padding:8px 12px;transition:border-color .12s cubic-bezier(.22,1,.36,1);width:100%}.up-input[data-v-24a06e51]:focus{border-color:var(--border-focus);outline:none}.up-input[data-v-24a06e51]:focus-visible{outline:2px solid var(--primary);outline-offset:1px}.up-privacy[data-v-24a06e51]{align-items:flex-start;color:var(--text-tertiary);display:flex;font-size:12px;gap:4px;line-height:1.5;margin:0}.up-privacy i[data-v-24a06e51]{margin-top:1px}.up-foot[data-v-24a06e51]{border-top:1px solid var(--border);display:flex;gap:8px;justify-content:flex-end;padding:12px 16px}.up-btn[data-v-24a06e51]{border:1px solid var(--border);border-radius:6px;cursor:pointer;font-family:inherit;font-size:13px;padding:8px 16px;transition:background .12s cubic-bezier(.22,1,.36,1),transform .12s cubic-bezier(.22,1,.36,1)}.up-btn[data-v-24a06e51]:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.up-btn[data-v-24a06e51]:active:not(:disabled){transform:scale(.98)}.up-btn.ghost[data-v-24a06e51]{background:transparent;color:var(--text-secondary)}.up-btn.ghost[data-v-24a06e51]:hover{background:var(--surface-hover)}.up-btn.primary[data-v-24a06e51]{background:var(--primary);border-color:var(--primary);color:var(--text-inverse)}.up-btn.primary[data-v-24a06e51]:hover:not(:disabled){background:var(--primary-hover)}.up-btn.primary[data-v-24a06e51]:disabled{cursor:not-allowed;opacity:.6}.up-toast[data-v-24a06e51]{background:var(--surface-raised);border:1px solid var(--border);border-radius:6px;bottom:90px;box-shadow:var(--shadow-lg);color:var(--text-primary);font-size:13px;left:50%;padding:8px 16px;position:fixed;transform:translate(-50%);z-index:10080}.up-toast.err[data-v-24a06e51]{border-color:var(--danger);color:var(--danger)}.up-toast-enter-active[data-v-24a06e51],.up-toast-leave-active[data-v-24a06e51]{transition:opacity .18s cubic-bezier(.22,1,.36,1)}.up-toast-enter-from[data-v-24a06e51],.up-toast-leave-to[data-v-24a06e51]{opacity:0}
