.ui-toast[data-v-cf575257]{position:fixed;left:50%;bottom:30px;z-index:300;display:flex;align-items:flex-start;gap:10px;transform:translate(-50%);padding:11px 18px;border-radius:99px;background:#1d2122;color:#fff;font-size:15px;line-height:1.5;box-shadow:0 8px 24px #0000002e;max-width:min(520px,86vw)}.ui-toast.has-close[data-v-cf575257]{border-radius:16px;padding:12px 12px 12px 16px;align-items:flex-start}.ui-toast-text[data-v-cf575257]{flex:1;min-width:0;word-break:break-word}.ui-toast-close[data-v-cf575257]{flex-shrink:0;width:22px;height:22px;margin-top:-1px;border-radius:50%;background:#ffffff2e;color:#fff;font-size:18px;line-height:1;display:grid;place-items:center}.ui-toast-close[data-v-cf575257]:hover{background:#ffffff4d}.ui-toast.is-error[data-v-cf575257]{background:#dc2626}.ui-toast.is-success[data-v-cf575257]{background:#16a34a}.ui-dialog-mask[data-v-cf575257]{position:fixed;inset:0;z-index:300;background:#14141473;display:grid;place-items:center;padding:24px}.ui-dialog[data-v-cf575257]{width:min(400px,88vw);background:#fff;border-radius:18px;padding:22px 24px 20px;text-align:left;box-shadow:0 24px 60px #00000038}.ui-dialog-head[data-v-cf575257]{display:flex;align-items:center;gap:10px;margin-bottom:14px}.ui-dialog-icon[data-v-cf575257]{display:grid;place-items:center;width:26px;height:26px;flex-shrink:0;border-radius:50%;font-size:16px;font-weight:700;color:#fff}.ui-dialog-icon.is-info[data-v-cf575257]{background:#1d2122}.ui-dialog-icon.is-success[data-v-cf575257]{background:#16a34a}.ui-dialog-icon.is-warning[data-v-cf575257]{background:#f59e0b}.ui-dialog-icon.is-error[data-v-cf575257]{background:#dc2626}.ui-dialog h3[data-v-cf575257]{margin:0;font-size:18px;font-weight:700}.ui-dialog-message[data-v-cf575257]{margin:0 0 20px;font-size:15px;line-height:1.7;color:#6b6b6b;word-break:break-word;white-space:pre-line}.ui-dialog-btn[data-v-cf575257]{width:100%;padding:11px 0;border-radius:999px;background:#1d2122;color:#fff;font-size:15px;font-weight:600}.ui-dialog-btn.is-success[data-v-cf575257]{background:#16a34a}.ui-dialog-btn.is-warning[data-v-cf575257]{background:#f59e0b}.ui-dialog-btn.is-error[data-v-cf575257]{background:#dc2626}.ui-dialog-enter-active[data-v-cf575257],.ui-dialog-leave-active[data-v-cf575257]{transition:opacity .18s ease}.ui-dialog-enter-active .ui-dialog[data-v-cf575257],.ui-dialog-leave-active .ui-dialog[data-v-cf575257]{transition:transform .18s ease,opacity .18s ease}.ui-dialog-enter-from[data-v-cf575257],.ui-dialog-leave-to[data-v-cf575257]{opacity:0}.ui-dialog-enter-from .ui-dialog[data-v-cf575257],.ui-dialog-leave-to .ui-dialog[data-v-cf575257]{transform:scale(.94) translateY(8px);opacity:0}.ui-toast-enter-active[data-v-cf575257],.ui-toast-leave-active[data-v-cf575257]{transition:opacity .2s ease,transform .2s ease}.ui-toast-enter-from[data-v-cf575257],.ui-toast-leave-to[data-v-cf575257]{opacity:0;transform:translate(-50%,12px)}.settings-overlay[data-v-cf3addb4]{position:fixed;inset:0;z-index:200;display:grid;place-items:center;padding:24px;background:#0000006b;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.settings-dialog[data-v-cf3addb4]{width:min(420px,92vw);max-height:88vh;display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line);border-radius:18px;box-shadow:0 24px 56px #0003;overflow:hidden}.settings-head[data-v-cf3addb4]{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--line)}.settings-head h2[data-v-cf3addb4]{flex:1;min-width:0;margin:0;font-size:18px;font-weight:700}.icon-back[data-v-cf3addb4]{width:30px;height:30px;margin-right:6px;border-radius:8px;font-size:24px;line-height:1;color:var(--ink-muted)}.icon-back[data-v-cf3addb4]:hover{background:var(--nav-idle);color:var(--ink)}.icon-close[data-v-cf3addb4]{width:30px;height:30px;border-radius:8px;font-size:21px;color:var(--ink-muted)}.icon-close[data-v-cf3addb4]:hover{background:var(--nav-idle);color:var(--ink)}.settings-body[data-v-cf3addb4]{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:16px;padding:18px 20px 20px}.profile[data-v-cf3addb4]{display:flex;align-items:center;gap:14px;padding:16px;border:1px solid var(--line);border-radius:14px;background:var(--panel)}.avatar[data-v-cf3addb4]{display:grid;place-items:center;width:52px;height:52px;flex-shrink:0;border-radius:16px;background:#222624;color:#fff;font-size:24px;font-weight:800}.avatar-img[data-v-cf3addb4]{object-fit:cover}.profile-main[data-v-cf3addb4]{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.name-row[data-v-cf3addb4]{display:flex;align-items:center;gap:8px}.name[data-v-cf3addb4]{font-size:18px;font-weight:800;color:var(--ink)}.edit-name[data-v-cf3addb4]{flex-shrink:0;padding:2px 8px;border-radius:999px;border:1px solid var(--line);background:var(--surface);color:var(--ink-muted);font-size:14px;font-weight:700}.edit-name[data-v-cf3addb4]:hover{border-color:var(--accent);color:var(--accent)}.nickname-form[data-v-cf3addb4]{display:flex;flex-direction:column;gap:8px}.nickname-input[data-v-cf3addb4]{width:100%;padding:8px 10px;border-radius:8px;border:1px solid var(--line);background:var(--surface);color:var(--ink);font-size:16px;font-weight:700;font-family:inherit}.nickname-input[data-v-cf3addb4]:focus{outline:none;border-color:var(--accent)}.nickname-actions[data-v-cf3addb4]{display:flex;gap:8px}.btn-save[data-v-cf3addb4],.btn-cancel[data-v-cf3addb4]{height:30px;padding:0 14px;border-radius:8px;font-size:15px;font-weight:800}.btn-save[data-v-cf3addb4]{border:1px solid var(--accent);background:var(--accent);color:#fff}.btn-cancel[data-v-cf3addb4]{border:1px solid var(--line);background:var(--surface);color:var(--ink-muted)}.btn-save[data-v-cf3addb4]:disabled,.btn-cancel[data-v-cf3addb4]:disabled{opacity:.5}.nickname-error[data-v-cf3addb4]{font-size:14px;color:#d84a3b}.pwd-hint[data-v-cf3addb4]{margin:0;font-size:14px;line-height:1.6;color:var(--ink-muted)}.pwd-form[data-v-cf3addb4]{display:flex;flex-direction:column;gap:14px}.pwd-field[data-v-cf3addb4]{display:flex;flex-direction:column;gap:6px;font-size:15px;font-weight:700;color:var(--ink)}.pwd-field input[data-v-cf3addb4]{height:42px;padding:0 12px;border-radius:10px;border:1px solid var(--line);background:var(--panel);color:var(--ink);font-size:16px;font-family:inherit;font-weight:500}.pwd-field input[data-v-cf3addb4]:focus{outline:none;border-color:var(--accent)}.pwd-error[data-v-cf3addb4]{font-size:14px;color:#d84a3b}.pwd-actions[data-v-cf3addb4]{display:flex;justify-content:flex-end;gap:10px;margin-top:4px}.pwd-actions .btn-save[data-v-cf3addb4],.pwd-actions .btn-cancel[data-v-cf3addb4]{height:38px;padding:0 20px;border-radius:10px;font-size:16px}.phone[data-v-cf3addb4]{font-size:15px;color:var(--ink-muted)}.menu[data-v-cf3addb4]{display:flex;flex-direction:column;gap:2px;padding:4px;border:1px solid var(--line);border-radius:14px}.row[data-v-cf3addb4]{display:flex;align-items:center;gap:10px;width:100%;padding:13px 12px;border-radius:10px;text-align:left}.row[data-v-cf3addb4]:hover{background:var(--nav-idle)}.row-label[data-v-cf3addb4]{flex:1;min-width:0;font-size:16px;font-weight:700;color:var(--ink)}.row-value[data-v-cf3addb4]{font-size:15px;font-weight:800;color:var(--accent)}.arrow[data-v-cf3addb4]{color:var(--ink-faint);font-size:21px;line-height:1}.logout[data-v-cf3addb4]{display:flex;align-items:center;justify-content:center;height:42px;border-radius:12px;border:1px solid #ead4d1;background:var(--surface);color:#d84a3b;font-size:16px;font-weight:800}.logout[data-v-cf3addb4]:disabled{opacity:.5}.task-bar[data-v-f5cfb4b5]{position:fixed;right:24px;bottom:24px;z-index:240;display:flex;align-items:center;gap:12px;max-width:min(420px,calc(100vw - 48px));padding:12px 14px;border-radius:16px;background:#1d2122;color:#fff;box-shadow:0 12px 32px #00000047;border:1px solid rgba(255,255,255,.08)}.task-bar.is-succeeded[data-v-f5cfb4b5]{background:#14532d}.task-bar.is-failed[data-v-f5cfb4b5]{background:#7f1d1d}.task-spinner[data-v-f5cfb4b5]{width:16px;height:16px;flex-shrink:0;border-radius:50%;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;animation:taskbar-spin-f5cfb4b5 .9s linear infinite}.task-icon[data-v-f5cfb4b5]{display:grid;place-items:center;width:20px;height:20px;flex-shrink:0;border-radius:50%;background:#ffffff2e;font-size:15px;font-weight:700}.task-info[data-v-f5cfb4b5]{min-width:0;display:flex;flex-direction:column;gap:2px}.task-info b[data-v-f5cfb4b5]{font-size:15px;font-weight:600;white-space:nowrap}.task-info small[data-v-f5cfb4b5]{font-size:13px;color:#ffffffbf;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.task-track[data-v-f5cfb4b5]{width:84px;height:5px;flex-shrink:0;border-radius:99px;background:#ffffff29;overflow:hidden}.task-track i[data-v-f5cfb4b5]{display:block;height:100%;border-radius:99px;background:#22c55e;transition:width .4s ease}.task-btn[data-v-f5cfb4b5]{flex-shrink:0;padding:7px 12px;border-radius:999px;font-size:14px;font-weight:600;background:#fff;color:#1d2122}.task-close[data-v-f5cfb4b5]{flex-shrink:0;display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#ffffff24;color:#fff;font-size:17px}.taskbar-enter-active[data-v-f5cfb4b5],.taskbar-leave-active[data-v-f5cfb4b5]{transition:opacity .22s ease,transform .22s ease}.taskbar-enter-from[data-v-f5cfb4b5],.taskbar-leave-to[data-v-f5cfb4b5]{opacity:0;transform:translateY(12px)}@keyframes taskbar-spin-f5cfb4b5{to{transform:rotate(360deg)}}:root{--bg: #f2f0ea;--surface: #ffffff;--panel: #faf8f4;--ink: #161a18;--ink-soft: #454d48;--ink-muted: #78817a;--ink-faint: #a6ada7;--line: #e4e0d7;--line-strong: #cfc9bc;--nav-idle: #efece4;--nav-hover: #e6e2d8;--nav-active: #1f6f5c;--nav-active-hover: #17564a;--accent: #1f6f5c;--accent-2: #17564a;--accent-3: #34a183;--accent-soft: rgba(31, 111, 92, .1);--gold: #a67c3d;--gold-2: #e3c48a;--status: #34a183;--shadow-soft: 0 1px 2px rgba(22, 26, 24, .04);--shadow-card: 0 1px 2px rgba(22, 26, 24, .04), 0 12px 28px -14px rgba(22, 26, 24, .14);--cta-gradient: linear-gradient(120deg, #34a183 0%, #17564a 62%, #124237 100%);--cta-shadow: 0 12px 30px -10px rgba(23, 86, 74, .62), inset 0 1px rgba(255, 255, 255, .28);--sidebar-width: 260px;--header-height: 64px;--radius-pill: 999px;--radius-md: 14px;--font-ui: "Noto Sans SC", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif}*,*:before,*:after{box-sizing:border-box}html,body,#app{height:100%}::selection{background:#1f6f5c33}body{margin:0;font-family:var(--font-ui);color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}button{font:inherit;color:inherit;background:none;border:none;padding:0;cursor:pointer}a{color:inherit;text-decoration:none}.app{display:flex;height:100%;min-height:100vh;background:var(--bg)}.app-main{flex:1;min-width:0;display:flex;flex-direction:column}.app-header{height:52px;display:flex;align-items:center;padding:0 32px;flex-shrink:0;background:transparent;z-index:20}.app-body{flex:1;min-height:0;display:flex}.sidebar{position:relative;z-index:10;display:flex;flex-direction:column;width:var(--sidebar-width);flex-shrink:0;padding:24px 16px 16px;overflow:hidden;color:#fff;border-right:1px solid rgba(255,255,255,.07);background:radial-gradient(120% 62% at 50% 0%,rgba(52,161,131,.26),transparent 64%),linear-gradient(180deg,#182723,#101917 46%)}.sidebar-brand{display:flex;align-items:center;gap:12px;margin-bottom:28px;padding:0 8px;min-width:0}.sidebar-brand-mark{display:grid;place-items:center;flex-shrink:0;width:44px;height:44px;border-radius:12px;background:#fff;box-shadow:0 10px 22px -8px #1f6f5cd9}.sidebar-brand-logo{width:28px;height:28px;object-fit:contain;display:block}.sidebar-brand-text{min-width:0;display:flex;flex-direction:column;gap:2px}.sidebar-brand-name{font-size:18px;font-weight:600;letter-spacing:.01em;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-brand-sub{font-size:15px;color:#ffffff73}.sidebar-nav{display:flex;flex-direction:column;gap:4px;flex:1;min-height:0;overflow:auto}.nav-group+.nav-group{margin-top:8px}.nav-group-label{padding:4px 12px 8px;font-size:15px;font-weight:600;color:#fff6}.nav-divider{height:1px;margin:16px 12px;background:#ffffff12}.nav-item{position:relative;display:flex;align-items:center;gap:10px;width:100%;min-height:48px;padding:0 12px;border-radius:12px;color:#fff9;background:transparent;text-align:left;transition:background .2s ease,color .2s ease}.nav-item:hover{background:#ffffff0d;color:#fff}.nav-item:hover .nav-icon{color:#fffc}.nav-item.is-active{background:linear-gradient(100deg,#2f967c61,#1f6f5c29);color:#fff}.nav-item.is-active:before{content:"";position:absolute;left:0;top:50%;width:3px;height:20px;border-radius:0 999px 999px 0;transform:translateY(-50%);background:linear-gradient(#1f6f5c,#17564a)}.nav-item.is-active:hover{background:linear-gradient(100deg,#2f967c75,#1f6f5c38);color:#fff}.nav-icon{width:20px;height:20px;flex-shrink:0;color:#ffffff73;transition:color .2s ease}.nav-item.is-active .nav-icon{color:#fff}.nav-label{flex:1;font-size:17px;font-weight:500;line-height:1.35;white-space:nowrap}.nav-item.is-active .nav-label{font-weight:600}.sidebar-footer{margin-top:auto;padding-top:12px}.avatar-btn{position:relative;display:flex;align-items:center;gap:10px;width:100%;min-height:52px;padding:8px 12px;border-radius:16px;border:1px solid rgba(255,255,255,.07);background:#ffffff09;transition:background .2s ease,border-color .2s ease}.avatar-btn:hover,.avatar-btn.is-active{background:#ffffff12;border-color:#ffffff1f}.avatar-btn.is-active .avatar-face{outline:2px solid rgba(227,196,138,.85);outline-offset:2px}.avatar-face{display:grid;place-items:center;width:36px;height:36px;border-radius:var(--radius-pill);background:#ffffff1a;color:#ffffffbf;overflow:hidden}.avatar-face svg{width:22px;height:22px}.avatar-status{position:absolute;left:34px;bottom:10px;width:10px;height:10px;border-radius:var(--radius-pill);background:var(--status);border:2px solid #101917}.avatar-meta{display:flex;flex-direction:column;align-items:flex-start;min-width:0;gap:2px}.avatar-name{font-size:15px;font-weight:600;color:#ffffffd9}.avatar-status-text{font-size:14px;color:#fff6}.main{position:relative;flex:1;min-width:0;display:flex;flex-direction:column;background:var(--bg);isolation:isolate}.main:before{content:"";position:absolute;inset:0;pointer-events:none;z-index:0;background:radial-gradient(680px 420px at 82% -6%,rgba(52,161,131,.16),transparent 70%),radial-gradient(560px 400px at 6% 104%,rgba(166,124,61,.12),transparent 72%)}.brand{display:flex;align-items:center;gap:12px;min-width:0}.brand-mark{display:grid;place-items:center;flex-shrink:0;width:28px;height:28px}.brand-mark svg{width:28px;height:28px;display:block}.brand-logo{font-family:var(--font-ui);font-size:18px;font-weight:600;line-height:1.15;letter-spacing:.02em;color:var(--ink);white-space:nowrap}.brand-divider{width:1px;height:14px;background:var(--line-strong);flex-shrink:0}.brand-section{font-size:16px;font-weight:500;color:var(--ink-soft);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.main-content{position:relative;z-index:1;flex:1;display:flex;align-items:stretch;justify-content:flex-start;padding:28px 40px 48px;overflow:auto}.main-content.is-flush{padding:0;overflow:hidden}.placeholder{display:flex;flex-direction:column;align-items:center;text-align:center;max-width:420px;width:100%;margin:auto;animation:fade-up .28s ease}.placeholder-mark{display:grid;place-items:center;width:72px;height:72px;margin-bottom:20px;border-radius:22px;background:var(--surface);color:var(--ink-muted);box-shadow:var(--shadow-card);border:1px solid var(--line)}.placeholder-mark svg{width:32px;height:32px}.placeholder-title{margin:0 0 10px;font-size:32px;font-weight:700;letter-spacing:.02em;color:var(--ink)}.placeholder-desc{margin:0;font-size:17px;line-height:1.6;color:var(--ink-muted)}@keyframes fade-up{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(max-width:720px){.app-header{padding:0 16px}.main-content{padding:16px 20px 32px}.brand{gap:8px}.brand-logo{font-size:17px}}
