.toast[data-v-d1b71e84]{background:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--radius-sm);box-shadow:var(--shadow-md);color:var(--text-primary);z-index:20000;pointer-events:none;align-items:center;gap:8px;padding:10px 18px;font-size:13px;display:flex;position:fixed;bottom:24px;left:24px}.toast-enter-active[data-v-d1b71e84]{transition:all .25s var(--ease-out)}.toast-leave-active[data-v-d1b71e84]{transition:all .2s ease-in}.toast-enter-from[data-v-d1b71e84]{opacity:0;transform:translateY(12px)}.toast-leave-to[data-v-d1b71e84]{opacity:0;transform:translateY(-8px)}.auth-page[data-v-f22c1130]{background:var(--bg);z-index:300;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.auth-card[data-v-f22c1130]{background:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--radius-lg);width:360px;max-width:90vw;box-shadow:var(--shadow-lg);flex-direction:column;gap:14px;padding:36px 32px;display:flex}.auth-logo[data-v-f22c1130]{align-items:center;gap:10px;margin-bottom:8px;display:flex}.auth-logo svg[data-v-f22c1130]{color:var(--accent)}.auth-logo h2[data-v-f22c1130]{color:var(--text-primary);font-size:18px;font-weight:600}.auth-card h3[data-v-f22c1130]{color:var(--text-primary);font-size:16px;font-weight:600}.auth-input[data-v-f22c1130]{border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--input-bg);width:100%;color:var(--text-primary);outline:none;padding:10px 14px;font-size:14px}.auth-input[data-v-f22c1130]:focus{border-color:var(--accent)}.auth-error[data-v-f22c1130]{color:var(--danger);font-size:13px}.auth-btn[data-v-f22c1130]{border-radius:var(--radius-sm);background:var(--accent);color:#fff;cursor:pointer;border:none;width:100%;padding:12px;font-size:14px;font-weight:600}.auth-btn[data-v-f22c1130]:hover{background:var(--accent-hover)}.auth-btn[data-v-f22c1130]:disabled{opacity:.5;cursor:default}.auth-switch[data-v-f22c1130]{color:var(--text-muted);text-align:center;font-size:13px}.auth-switch a[data-v-f22c1130]{color:var(--accent)}.auth-footer[data-v-f22c1130]{text-align:center;color:var(--text-muted);padding:16px;font-size:12px;position:absolute;bottom:0;left:0;right:0}.app-container[data-v-8c36fb8b]{background:var(--bg);flex-direction:column;min-height:100vh;display:flex;position:relative}.app-header[data-v-8c36fb8b]{background:var(--bg-elevated);border-bottom:1px solid var(--border-color);z-index:100;justify-content:space-between;align-items:center;height:64px;padding:0 16px;display:flex;position:sticky;top:0}.header-left[data-v-8c36fb8b]{align-items:center;gap:8px;min-width:200px;display:flex}.logo-icon[data-v-8c36fb8b]{color:var(--accent);flex-shrink:0}.app-title[data-v-8c36fb8b]{color:var(--text-primary);font-size:16px;font-weight:600}.header-center[data-v-8c36fb8b]{flex:1;justify-content:center;padding:0 16px;display:flex}.header-right[data-v-8c36fb8b]{justify-content:flex-end;align-items:center;gap:8px;min-width:200px;display:flex}.btn-icon[data-v-8c36fb8b],.btn-theme[data-v-8c36fb8b]{border:1px solid var(--border-color);width:38px;height:38px;color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:50%;justify-content:center;align-items:center;transition:all .15s;display:flex}.btn-icon[data-v-8c36fb8b]:hover,.btn-theme[data-v-8c36fb8b]:hover{background:var(--hover-bg);color:var(--text-primary)}.user-menu[data-v-8c36fb8b]{align-items:center;display:flex;position:relative}.user-avatar[data-v-8c36fb8b]{background:var(--accent);color:#fff;cursor:pointer;-webkit-user-select:none;user-select:none;border:2px solid #0000;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:14px;font-weight:600;transition:border-color .15s,box-shadow .15s;display:flex}.user-avatar.avatar-hover[data-v-8c36fb8b]{border-color:var(--border-light);box-shadow:0 0 0 3px var(--accent-subtle)}.user-dropdown[data-v-8c36fb8b]{background:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--radius-sm);min-width:140px;box-shadow:var(--shadow-lg);z-index:500;padding:4px;position:absolute;top:40px;right:0}.user-dropdown button[data-v-8c36fb8b]{width:100%;color:var(--text-primary);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:4px;padding:8px 14px;font-size:13px;display:block}.user-dropdown button[data-v-8c36fb8b]:hover{background:var(--hover-bg)}.user-dropdown button.danger[data-v-8c36fb8b]{color:var(--danger)}.user-dropdown button.danger[data-v-8c36fb8b]:hover{background:#f871711a}.dropdown-version[data-v-8c36fb8b]{border-top:1px solid var(--border-color);color:var(--text-tertiary,var(--text-secondary));text-align:center;letter-spacing:.3px;margin-top:4px;padding:6px 14px 2px;font-size:11px}.menu-enter-active[data-v-8c36fb8b]{transition:all .15s var(--ease-out)}.menu-leave-active[data-v-8c36fb8b]{transition:all .1s}.menu-enter-from[data-v-8c36fb8b],.menu-leave-to[data-v-8c36fb8b]{opacity:0;transform:translateY(-4px)}.search-box[data-v-8c36fb8b]{width:100%;max-width:480px;position:relative}.search-icon[data-v-8c36fb8b]{color:var(--text-muted);pointer-events:none;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.search-input[data-v-8c36fb8b]{border:1px solid var(--border-color);background:var(--input-bg);width:100%;height:38px;color:var(--text-primary);border-radius:24px;outline:none;padding:0 36px;font-size:13px;transition:border-color .15s}.search-input[data-v-8c36fb8b]::placeholder{color:var(--text-muted)}.search-input[data-v-8c36fb8b]:focus{border-color:var(--accent)}.search-clear[data-v-8c36fb8b]{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:4px;font-size:16px;line-height:1;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.search-clear[data-v-8c36fb8b]:hover{color:var(--text-primary)}.btn-upload[data-v-8c36fb8b]{border:1px solid var(--border-color);background:var(--card-bg);color:var(--text-secondary);cursor:pointer;border-radius:24px;align-items:center;gap:6px;padding:8px 16px;font-size:13px;font-weight:500;transition:all .15s;display:flex}.btn-upload[data-v-8c36fb8b]:hover{border-color:var(--border-light);color:var(--text-primary);background:var(--hover-bg)}.btn-upload[data-v-8c36fb8b]:active{transform:scale(.98)}@font-face{font-family:DM Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/DM-Sans-400.ttf)format("truetype")}@font-face{font-family:DM Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/DM-Sans-500.ttf)format("truetype")}@font-face{font-family:DM Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/DM-Sans-600.ttf)format("truetype")}@font-face{font-family:DM Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/DM-Sans-700.ttf)format("truetype")}:root,.dark{--bg:#0a0a0a;--bg-elevated:#151515;--card-bg:#1a1a1a;--card-hover:#202020;--text-primary:#e5e7eb;--text-secondary:#9ca3af;--text-muted:#6b7280;--border-color:#2a2a2a;--border-light:#333;--input-bg:#1e1e1e;--hover-bg:#252525;--accent:#acccfa;--accent-hover:#c4dafc;--accent-subtle:#accbfa1a;--success:#10c14d;--danger:#fa2921;--shadow-sm:0 1px 2px #00000080;--shadow-card:0 1px 2px #3c40434d, 0 1px 3px 1px #3c404326;--shadow-md:0 4px 16px #00000080;--shadow-lg:0 16px 48px #0009;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--ease-out:cubic-bezier(.16, 1, .3, 1)}.light{--bg:#f9fafb;--bg-elevated:#fff;--card-bg:#fff;--card-hover:#f9fafb;--text-primary:#111827;--text-secondary:#6b7280;--text-muted:#9ca3af;--border-color:#e5e7eb;--border-light:#f3f4f6;--input-bg:#f9fafb;--hover-bg:#f3f4f6;--accent:#4250af;--accent-hover:#374294;--accent-subtle:#4250af14;--shadow-sm:0 1px 2px #0000000d;--shadow-card:0 1px 2px #3c404326, 0 1px 3px 1px #3c404314;--shadow-md:0 4px 12px #00000014;--shadow-lg:0 12px 32px #0000001a}*,:before,:after{box-sizing:border-box;margin:0;padding:0}body{color:var(--text-primary);background:var(--bg);letter-spacing:-.015em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:DM Sans,-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,Helvetica Neue,Arial,sans-serif;font-size:14px;font-weight:400;line-height:1.5}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-light);border-radius:2px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}::selection{background:var(--accent-subtle);color:var(--text-primary)}
