.brand-mark[data-v-e13acf8a]{flex-shrink:0;display:block}.shell[data-v-f3d6e5b4]{min-height:100vh}.sidebar[data-v-f3d6e5b4]{background:var(--c-surface);border-right:1px solid var(--c-border);z-index:10;width:240px;position:fixed;inset:0 auto 0 0}.sidebar-inner[data-v-f3d6e5b4]{flex-direction:column;height:100%;padding:18px 14px 14px;display:flex}.sidebar-inner.drawer[data-v-f3d6e5b4]{padding-top:20px}.brand[data-v-f3d6e5b4]{color:var(--c-text);align-items:center;gap:10px;padding:2px 6px 18px;display:flex}.brand.small[data-v-f3d6e5b4]{gap:8px;padding:0}.brand-text[data-v-f3d6e5b4]{flex-direction:column;line-height:1.2;display:flex}.brand-name[data-v-f3d6e5b4]{letter-spacing:.01em;font-size:15px;font-weight:650}.brand-sub[data-v-f3d6e5b4]{color:var(--c-text-3);margin-top:2px;font-size:12px}.cta[data-v-f3d6e5b4]{margin:0 0 14px}.menu[data-v-f3d6e5b4]{flex:1;overflow-y:auto}.menu[data-v-f3d6e5b4] .n-menu-item-group-title{margin-top:6px;font-size:12px;padding-left:12px!important}.user[data-v-f3d6e5b4]{border:1px solid var(--c-border-soft);background:var(--c-surface-muted);border-radius:10px;align-items:center;gap:10px;padding:10px;display:flex}.avatar[data-v-f3d6e5b4]{color:#fff;background:linear-gradient(135deg,#3b82f6,#1d4ed8);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:14px;font-weight:600;display:inline-flex}.user-text[data-v-f3d6e5b4]{flex-direction:column;flex:1;min-width:0;line-height:1.3;display:flex}.user-name[data-v-f3d6e5b4]{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;overflow:hidden}.user-role[data-v-f3d6e5b4]{color:var(--c-text-3);font-size:12px}.topbar[data-v-f3d6e5b4]{display:none}.content[data-v-f3d6e5b4]{min-height:100vh;margin-left:240px}@media (width<=900px){.sidebar[data-v-f3d6e5b4]{display:none}.topbar[data-v-f3d6e5b4]{z-index:10;-webkit-backdrop-filter:saturate(180%)blur(12px);backdrop-filter:saturate(180%)blur(12px);border-bottom:1px solid var(--c-border);background:#ffffffe6;justify-content:space-between;align-items:center;gap:8px;height:56px;padding:0 12px;display:flex;position:sticky;top:0}.content[data-v-f3d6e5b4]{margin-left:0}}@media print{.content[data-v-f3d6e5b4]{margin-left:0}}:root{--c-bg:#f7f8fa;--c-surface:#fff;--c-surface-muted:#f8fafc;--c-border:#e5e7eb;--c-border-soft:#eef0f3;--c-text:#0f172a;--c-text-2:#475569;--c-text-3:#94a3b8;--c-primary:#2563eb;--c-primary-soft:#eff4ff;--c-primary-border:#c7d7fe;--c-success:#16a34a;--c-success-soft:#ecfdf3;--c-warning:#d97706;--c-warning-soft:#fffbeb;--c-danger:#dc2626;--c-danger-soft:#fef2f2;--hl-high:#fde8e8;--hl-high-strong:#ef4444;--hl-high-text:#b91c1c;--hl-medium:#feefdc;--hl-medium-strong:#f59e0b;--hl-medium-text:#b45309;--hl-low:#fdf6d3;--hl-low-strong:#eab308;--hl-low-text:#a16207;--radius-sm:6px;--radius:10px;--radius-lg:14px;--shadow-sm:0 1px 2px #0f172a0a;--shadow:0 1px 3px #0f172a0f, 0 1px 2px #0f172a08;--shadow-lg:0 12px 32px -12px #0f172a2e;--font:-apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Arial, sans-serif;--page-bg:var(--c-bg)}*{box-sizing:border-box}html,body,#app{height:100%;margin:0}body{background:var(--c-bg);font-family:var(--font);color:var(--c-text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility}a{color:var(--c-primary);text-decoration:none}.page{max-width:1360px;margin:0 auto;padding:28px 32px 48px}.page.narrow{max-width:980px}.page.wide{max-width:1680px}.panel{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.panel-head{border-bottom:1px solid var(--c-border-soft);justify-content:space-between;align-items:center;gap:12px;padding:16px 20px;display:flex}.panel-title{color:var(--c-text);margin:0;font-size:15px;font-weight:600}.panel-body{padding:20px}.muted{color:var(--c-text-2)}.subtle{color:var(--c-text-3)}.num{font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}.link{color:var(--c-primary);cursor:pointer;font-weight:500}.link:hover{text-decoration:underline}.scroll-y{scrollbar-width:thin;scrollbar-color:#d4d8de transparent;overflow-y:auto}.scroll-y::-webkit-scrollbar{width:8px}.scroll-y::-webkit-scrollbar-thumb{border:2px solid var(--c-surface);background:#d4d8de;border-radius:8px}@media (width<=768px){.page{padding:18px 16px 40px}}@media print{.no-print{display:none!important}body{background:#fff}.panel{box-shadow:none}}
