@import"https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Noto+Sans+SC:wght@400;500;700&display=swap";.page-card{background:var(--glass-bg-strong);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--glass-border);border-radius:22px;box-shadow:var(--shadow-soft)}.dashboard-card:before{content:"";position:absolute;top:0;left:28px;right:28px;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.65),transparent)}.dashboard-card:after{content:"";position:absolute;top:16px;right:22px;width:140px;height:140px;border-radius:50%;background:radial-gradient(circle,var(--accent-soft),transparent 72%);pointer-events:none}.app-shell .app-sider{background:linear-gradient(180deg,var(--sidebar-bg) 0%,var(--sidebar-bg-2) 100%)!important;border-right:1px solid var(--glass-border)!important;box-shadow:inset -1px 0 #ffffff0d,12px 0 32px #0206171f}.dashboard-sider:before{content:"";position:absolute;left:0;right:0;top:0;height:240px;background:linear-gradient(180deg,var(--sidebar-accent) 0%,transparent 88%);pointer-events:none}.sider-inner{height:100%;display:flex;flex-direction:column}.sider-menu-wrap{flex:1;min-height:0;padding-bottom:12px;overflow:hidden}.sider-bottom{padding:0 14px 16px}.sider-brand{position:relative;margin:16px 14px 14px;padding:16px 14px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-radius:18px;border:1px solid var(--glass-border);background:linear-gradient(180deg,var(--panel-strong) 0%,var(--panel-muted) 100%);box-shadow:var(--shadow-soft)}.brand-text{min-width:0;flex:1}.brand-title.ant-typography{margin-bottom:4px!important;color:var(--text-main);letter-spacing:.2px;font-size:20px;line-height:1.25;white-space:normal;word-break:break-word}.brand-subtitle.ant-typography{display:block;margin:0;color:var(--text-sub);font-weight:600;font-size:11px;line-height:1.4}.brand-logo{width:36px;height:36px;object-fit:contain;flex-shrink:0}.app-shell .ant-layout-sider-collapsed .sider-brand{padding:12px;justify-content:center}.app-shell .ant-layout-sider-collapsed .brand-text{display:none}.dashboard-menu.ant-menu{background:transparent!important}.app-shell .app-sider .ant-menu-submenu-title,.app-shell .app-sider .ant-menu-item{margin:6px 10px;border-radius:12px;font-weight:600;color:var(--menu-item-color);transition:background-color .18s ease,color .18s ease,box-shadow .18s ease}.app-shell .app-sider .ant-menu-submenu-title:hover,.app-shell .app-sider .ant-menu-item:hover{background:var(--menu-item-hover)!important;color:var(--text-main)!important}.app-shell .app-sider .ant-menu-item-selected{background:var(--menu-item-active)!important;color:var(--text-main)!important;box-shadow:var(--menu-item-active-shadow)}.app-shell .app-sider .ant-menu-sub.ant-menu-inline{background:transparent!important}.app-shell .app-main{background:linear-gradient(180deg,var(--content-bg) 0%,var(--content-bg-2) 100%)}.dashboard-header{border-bottom:1px solid var(--glass-border);background:transparent!important}.welcome-text.ant-typography{color:var(--text-main);font-size:15px}.header-user{display:flex;align-items:center;gap:12px;padding:6px 10px 6px 8px;border:1px solid var(--header-pill-border);border-radius:999px;background:var(--header-pill-bg);box-shadow:var(--header-pill-shadow)}.logout-link{border:none;background:transparent;color:var(--accent);font-weight:700;cursor:pointer;padding:0 4px}.logout-link:hover{color:var(--accent-strong)}.app-shell .app-content{margin:0 0 24px!important;background:var(--content-bg);backdrop-filter:blur(var(--glass-blur-sm));-webkit-backdrop-filter:blur(var(--glass-blur-sm));border:1px solid var(--glass-border);border-top:none;border-radius:0 0 22px 22px;box-shadow:inset 0 1px #ffffff0a,var(--shadow-soft)}.theme-toggle-card{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 14px 12px;border-radius:16px;border:1px solid var(--theme-switch-border);background:var(--theme-switch-bg);box-shadow:var(--theme-switch-shadow)}.theme-toggle-card.is-collapsed{justify-content:center;padding-inline:10px}.theme-toggle-copy{display:flex;flex-direction:column;gap:2px;min-width:0}.theme-toggle-label.ant-typography{color:var(--text-main);font-weight:700}.theme-toggle-desc.ant-typography{color:var(--text-sub);font-size:12px}@media (max-width: 992px){.app-shell .app-content{margin:0 0 12px!important;padding:8px!important}.page-card{border-radius:16px}.dashboard-card{min-height:0!important;padding:14px!important}.dashboard-header{padding-inline:14px!important}.header-user{gap:8px;padding-right:8px}.welcome-text.ant-typography{font-size:12px}}.page-card .ant-table-wrapper .ant-table{border-collapse:separate;border-spacing:0 8px;background:transparent}.page-card .ant-table-wrapper .ant-table-thead>tr>th{background:linear-gradient(180deg,var(--table-head-bg-start) 0%,var(--table-head-bg-end) 100%)!important;border-bottom:1px solid var(--line-strong)!important;color:var(--table-head-color);font-weight:700;letter-spacing:.3px}.page-card .ant-table-wrapper .ant-table-tbody>tr{transition:background-color .15s ease}.page-card .ant-table-wrapper .ant-table-tbody>tr>td{border-top:1px solid transparent!important;border-bottom:1px solid transparent!important;transition:background-color .15s ease;padding-top:12px;padding-bottom:12px;color:var(--text-main)}.page-card .ant-table-wrapper .ant-table-tbody>tr:nth-child(odd)>td{background:var(--row-odd-bg);box-shadow:inset 0 0 0 1px var(--row-border)}.page-card .ant-table-wrapper .ant-table-tbody>tr:nth-child(2n)>td{background:var(--row-even-bg);box-shadow:inset 0 0 0 1px var(--row-border)}.page-card .ant-table-wrapper .ant-table-tbody>tr>td:first-child{border-top-left-radius:12px;border-bottom-left-radius:12px}.page-card .ant-table-wrapper .ant-table-tbody>tr>td:last-child{border-top-right-radius:12px;border-bottom-right-radius:12px}.page-card .ant-table-wrapper .ant-table-tbody>tr:hover{transform:none}.page-card .ant-table-wrapper .ant-table-tbody>tr:hover>td{background:var(--row-hover-bg)!important;box-shadow:inset 0 0 0 1px #2f74ff2e}.page-card .ant-table-wrapper .ant-table-tbody>tr:hover>td:first-child{border-left:3px solid var(--accent)}.page-card .ant-table-wrapper .ant-table-pagination{margin-top:12px}.page-card .ant-btn-primary{box-shadow:0 8px 18px #2f74ff2e;transition:box-shadow .15s ease}.page-card .ant-btn-primary:hover{transform:none;box-shadow:0 12px 24px #2f74ff38}.login-card.ant-card{background:var(--glass-bg-strong)!important;backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--glass-border);box-shadow:var(--shadow-deep)}.fade-up{animation:none}@media (max-width: 992px){.app-shell .app-content{margin:0 0 12px!important;padding:8px!important}.page-card{border-radius:14px}.dashboard-card{min-height:0!important;padding:14px!important}.dashboard-header{padding-inline:14px!important}.welcome-text.ant-typography{font-size:12px}}:root,:root[data-theme=light]{color-scheme:light;--bg-start: #eef4ff;--bg-mid: #f7faff;--bg-end: #edf3fb;--bg-orb-1: rgba(47, 116, 255, .15);--bg-orb-2: rgba(18, 184, 166, .1);--bg-orb-3: rgba(56, 189, 248, .1);--bg-grid: rgba(255, 255, 255, .28);--panel: #ffffff;--panel-strong: rgba(255, 255, 255, .94);--panel-muted: rgba(243, 248, 255, .92);--sidebar-bg: rgba(245, 249, 255, .92);--sidebar-bg-2: rgba(234, 242, 255, .88);--sidebar-accent: rgba(47, 116, 255, .1);--content-bg: rgba(255, 255, 255, .68);--content-bg-2: rgba(246, 250, 255, .78);--text-main: #16233a;--text-sub: #6b7c96;--text-soft: #93a3bb;--text-invert: #f8fbff;--line: rgba(194, 210, 236, .85);--line-strong: rgba(166, 189, 224, .92);--glass-bg: rgba(255, 255, 255, .82);--glass-bg-strong: rgba(255, 255, 255, .94);--glass-border: rgba(198, 216, 242, .9);--glass-blur: 10px;--glass-blur-sm: 4px;--accent: #2f74ff;--accent-strong: #1d4ed8;--accent-soft: rgba(47, 116, 255, .1);--success: #16a34a;--shadow-soft: 0 18px 42px rgba(30, 64, 175, .1);--shadow-deep: 0 28px 56px rgba(15, 23, 42, .12);--panel-soft-bg-start: rgba(248, 250, 252, .95);--panel-soft-bg-end: rgba(241, 245, 249, .9);--section-bg: #ffffff;--section-border: #d9d9d9;--inner-card-border: #e5e7eb;--group-card-outline: #dbeafe;--group-card-surface: #f8fbff;--group-card-title: #1f2937;--role-all-border: #2563eb;--role-all-outline: rgba(37, 99, 235, .2);--role-all-bg: #f5f9ff;--role-all-title: #1d4ed8;--role-member-border: #16a34a;--role-member-outline: rgba(22, 163, 74, .2);--role-member-bg: #f5fff7;--role-member-title: #15803d;--role-admin-border: #f59e0b;--role-admin-outline: rgba(245, 158, 11, .2);--role-admin-bg: #fffaf3;--role-admin-title: #b45309;--search-btn-start: #2f74ff;--search-btn-end: #5b94ff;--search-btn-border: #2f74ff;--chart-grid-line: rgba(15, 23, 42, .08);--chart-axis-line: rgba(15, 23, 42, .2);--chart-axis-label: rgba(15, 23, 42, .75);--chart-axis-label-strong: rgba(15, 23, 42, .85);--chart-bar-primary: #2563eb;--chart-shadow: rgba(30, 64, 175, .15);--chart-palette-1-start: #22d3ee;--chart-palette-1-end: #0ea5e9;--chart-palette-2-start: #60a5fa;--chart-palette-2-end: #2563eb;--chart-palette-3-start: #f59e0b;--chart-palette-3-end: #f97316;--chart-palette-4-start: #34d399;--chart-palette-4-end: #10b981;--chart-palette-5-start: #f472b6;--chart-palette-5-end: #ec4899;--chart-palette-6-start: #a78bfa;--chart-palette-6-end: #8b5cf6;--notice-shadow: 0 8px 24px rgba(15, 23, 42, .04);--notice-chart-border: rgba(37, 99, 235, .16);--notice-chart-bg: linear-gradient(135deg, rgba(37, 99, 235, .08), rgba(56, 189, 248, .06) 55%, rgba(14, 165, 233, .1));--notice-chart-badge-bg: rgba(37, 99, 235, .12);--notice-chart-badge-color: #1d4ed8;--notice-chart-title: #1e3a8a;--notice-chart-text: rgba(15, 23, 42, .8);--notice-chart-icon: #2563eb;--notice-mine-border: rgba(22, 163, 74, .16);--notice-mine-bg: linear-gradient(135deg, rgba(34, 197, 94, .08), rgba(16, 185, 129, .06) 55%, rgba(59, 130, 246, .06));--notice-mine-badge-bg: rgba(22, 163, 74, .12);--notice-mine-badge-color: #15803d;--notice-mine-title: #166534;--notice-mine-text: rgba(20, 83, 45, .82);--notice-mine-icon: #16a34a;--notice-all-border: rgba(124, 58, 237, .16);--notice-all-bg: linear-gradient(135deg, rgba(99, 102, 241, .08), rgba(168, 85, 247, .06) 55%, rgba(251, 191, 36, .07));--notice-all-badge-bg: rgba(124, 58, 237, .12);--notice-all-badge-color: #6d28d9;--notice-all-title: #4c1d95;--notice-all-text: rgba(49, 46, 129, .82);--notice-all-icon: #7c3aed;--notice-claim-border: rgba(234, 88, 12, .18);--notice-claim-bg: linear-gradient(135deg, rgba(251, 146, 60, .1), rgba(249, 115, 22, .06) 55%, rgba(245, 158, 11, .08));--notice-claim-badge-bg: rgba(234, 88, 12, .12);--notice-claim-badge-color: #c2410c;--notice-claim-title: #9a3412;--notice-claim-text: rgba(124, 45, 18, .82);--notice-claim-icon: #ea580c;--notice-export-border: rgba(220, 38, 38, .16);--notice-export-bg: linear-gradient(135deg, rgba(239, 68, 68, .09), rgba(248, 113, 113, .06) 55%, rgba(251, 191, 36, .06));--notice-export-badge-bg: rgba(220, 38, 38, .12);--notice-export-badge-color: #b91c1c;--notice-export-title: #991b1b;--notice-export-text: rgba(127, 29, 29, .82);--notice-export-icon: #dc2626;--menu-badge-bg: rgba(47, 116, 255, .12);--menu-badge-text: #2f74ff;--menu-item-color: #405779;--menu-item-hover: rgba(47, 116, 255, .1);--menu-item-active: linear-gradient(90deg, rgba(47, 116, 255, .18), rgba(47, 116, 255, .04));--menu-item-active-shadow: inset 0 0 0 1px rgba(47, 116, 255, .16), 0 10px 24px rgba(29, 78, 216, .12);--header-pill-bg: rgba(255, 255, 255, .88);--header-pill-border: rgba(198, 216, 242, .92);--header-pill-shadow: 0 10px 24px rgba(30, 64, 175, .1);--theme-switch-bg: rgba(255, 255, 255, .82);--theme-switch-border: rgba(198, 216, 242, .92);--theme-switch-shadow: 0 12px 24px rgba(30, 64, 175, .1);--table-head-bg-start: #deebff;--table-head-bg-end: #edf4ff;--table-head-color: #1c3558;--row-odd-bg: rgba(255, 255, 255, .96);--row-even-bg: rgba(239, 246, 255, .96);--row-hover-bg: rgba(224, 236, 255, .95);--row-border: rgba(188, 207, 236, .88)}:root[data-theme=dark]{color-scheme:dark;--bg-start: #06111f;--bg-mid: #0a1628;--bg-end: #0d1b31;--bg-orb-1: rgba(20, 184, 166, .12);--bg-orb-2: rgba(59, 130, 246, .11);--bg-orb-3: rgba(139, 92, 246, .1);--bg-grid: rgba(148, 163, 184, .06);--panel: #0f1b2d;--panel-strong: rgba(15, 27, 45, .92);--panel-muted: rgba(10, 20, 36, .92);--sidebar-bg: rgba(7, 16, 30, .95);--sidebar-bg-2: rgba(11, 22, 40, .98);--sidebar-accent: rgba(20, 184, 166, .1);--content-bg: rgba(10, 18, 32, .78);--content-bg-2: rgba(9, 17, 29, .84);--text-main: #e6edf7;--text-sub: #93a4bd;--text-soft: #6f819b;--text-invert: #06111f;--line: rgba(72, 94, 126, .55);--line-strong: rgba(93, 117, 150, .68);--glass-bg: rgba(15, 27, 45, .86);--glass-bg-strong: rgba(15, 27, 45, .94);--glass-border: rgba(68, 87, 114, .74);--glass-blur: 12px;--glass-blur-sm: 6px;--accent: #14b8a6;--accent-strong: #2dd4bf;--accent-soft: rgba(20, 184, 166, .12);--success: #22c55e;--shadow-soft: 0 22px 48px rgba(2, 6, 23, .45);--shadow-deep: 0 30px 64px rgba(2, 6, 23, .55);--panel-soft-bg-start: rgba(15, 27, 45, .9);--panel-soft-bg-end: rgba(11, 22, 40, .96);--section-bg: rgba(15, 27, 45, .86);--section-border: rgba(72, 94, 126, .55);--inner-card-border: rgba(72, 94, 126, .55);--group-card-outline: rgba(59, 130, 246, .28);--group-card-surface: rgba(17, 31, 52, .82);--group-card-title: #dbe7f4;--role-all-border: #38bdf8;--role-all-outline: rgba(56, 189, 248, .28);--role-all-bg: rgba(37, 99, 235, .12);--role-all-title: #93c5fd;--role-member-border: #22c55e;--role-member-outline: rgba(34, 197, 94, .24);--role-member-bg: rgba(22, 163, 74, .14);--role-member-title: #86efac;--role-admin-border: #f59e0b;--role-admin-outline: rgba(245, 158, 11, .24);--role-admin-bg: rgba(245, 158, 11, .12);--role-admin-title: #fcd34d;--search-btn-start: #14b8a6;--search-btn-end: #0f766e;--search-btn-border: #14b8a6;--chart-grid-line: rgba(148, 163, 184, .12);--chart-axis-line: rgba(148, 163, 184, .25);--chart-axis-label: rgba(226, 232, 240, .72);--chart-axis-label-strong: rgba(226, 232, 240, .88);--chart-bar-primary: #14b8a6;--chart-shadow: rgba(20, 184, 166, .18);--chart-palette-1-start: #22d3ee;--chart-palette-1-end: #06b6d4;--chart-palette-2-start: #38bdf8;--chart-palette-2-end: #2563eb;--chart-palette-3-start: #fbbf24;--chart-palette-3-end: #f97316;--chart-palette-4-start: #4ade80;--chart-palette-4-end: #16a34a;--chart-palette-5-start: #f472b6;--chart-palette-5-end: #db2777;--chart-palette-6-start: #a78bfa;--chart-palette-6-end: #7c3aed;--notice-shadow: 0 10px 28px rgba(2, 6, 23, .22);--notice-chart-border: rgba(56, 189, 248, .24);--notice-chart-bg: linear-gradient(135deg, rgba(37, 99, 235, .18), rgba(14, 165, 233, .1) 55%, rgba(6, 182, 212, .14));--notice-chart-badge-bg: rgba(37, 99, 235, .18);--notice-chart-badge-color: #bfdbfe;--notice-chart-title: #dbeafe;--notice-chart-text: rgba(219, 234, 254, .86);--notice-chart-icon: #7dd3fc;--notice-mine-border: rgba(34, 197, 94, .24);--notice-mine-bg: linear-gradient(135deg, rgba(21, 128, 61, .24), rgba(22, 163, 74, .12) 55%, rgba(16, 185, 129, .16));--notice-mine-badge-bg: rgba(34, 197, 94, .18);--notice-mine-badge-color: #bbf7d0;--notice-mine-title: #dcfce7;--notice-mine-text: rgba(220, 252, 231, .84);--notice-mine-icon: #86efac;--notice-all-border: rgba(167, 139, 250, .24);--notice-all-bg: linear-gradient(135deg, rgba(124, 58, 237, .22), rgba(168, 85, 247, .12) 55%, rgba(79, 70, 229, .16));--notice-all-badge-bg: rgba(124, 58, 237, .18);--notice-all-badge-color: #ddd6fe;--notice-all-title: #ede9fe;--notice-all-text: rgba(237, 233, 254, .84);--notice-all-icon: #c4b5fd;--notice-claim-border: rgba(251, 146, 60, .24);--notice-claim-bg: linear-gradient(135deg, rgba(234, 88, 12, .22), rgba(249, 115, 22, .12) 55%, rgba(245, 158, 11, .16));--notice-claim-badge-bg: rgba(234, 88, 12, .18);--notice-claim-badge-color: #fed7aa;--notice-claim-title: #ffedd5;--notice-claim-text: rgba(255, 237, 213, .84);--notice-claim-icon: #fdba74;--notice-export-border: rgba(248, 113, 113, .24);--notice-export-bg: linear-gradient(135deg, rgba(220, 38, 38, .22), rgba(239, 68, 68, .12) 55%, rgba(251, 146, 60, .12));--notice-export-badge-bg: rgba(220, 38, 38, .18);--notice-export-badge-color: #fecaca;--notice-export-title: #fee2e2;--notice-export-text: rgba(254, 226, 226, .84);--notice-export-icon: #fca5a5;--menu-badge-bg: rgba(20, 184, 166, .12);--menu-badge-text: #5eead4;--menu-item-color: #b8c6da;--menu-item-hover: rgba(20, 184, 166, .1);--menu-item-active: linear-gradient(90deg, rgba(20, 184, 166, .16), rgba(45, 212, 191, .04));--menu-item-active-shadow: inset 0 0 0 1px rgba(45, 212, 191, .14), 0 12px 24px rgba(2, 6, 23, .32);--header-pill-bg: rgba(15, 27, 45, .92);--header-pill-border: rgba(68, 87, 114, .74);--header-pill-shadow: 0 12px 28px rgba(2, 6, 23, .35);--theme-switch-bg: rgba(15, 27, 45, .92);--theme-switch-border: rgba(68, 87, 114, .74);--theme-switch-shadow: 0 12px 26px rgba(2, 6, 23, .35);--table-head-bg-start: #13243d;--table-head-bg-end: #182b46;--table-head-color: #dce6f4;--row-odd-bg: rgba(15, 27, 45, .94);--row-even-bg: rgba(18, 34, 56, .94);--row-hover-bg: rgba(24, 44, 72, .96);--row-border: rgba(60, 81, 110, .85)}*{box-sizing:border-box}html,body,#root{margin:0;width:100%;min-height:100%;font-family:Manrope,Noto Sans SC,PingFang SC,Microsoft YaHei,sans-serif;background:linear-gradient(145deg,var(--bg-start) 0%,var(--bg-mid) 48%,var(--bg-end) 100%);color:var(--text-main)}body{transition:background .25s ease,color .25s ease}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(circle at 10% 15%,var(--bg-orb-1),transparent 34%),radial-gradient(circle at 88% 8%,var(--bg-orb-2),transparent 28%),radial-gradient(circle at 80% 86%,var(--bg-orb-3),transparent 32%);z-index:0}body:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;background-image:linear-gradient(90deg,var(--bg-grid) 1px,transparent 1px),linear-gradient(0deg,var(--bg-grid) 1px,transparent 1px);background-size:52px 52px;-webkit-mask-image:radial-gradient(circle at center,rgba(0,0,0,.45),transparent 78%);mask-image:radial-gradient(circle at center,rgba(0,0,0,.45),transparent 78%);z-index:0}.dashboard-shell,.app-main,.page-card,.app-sider,.app-header,.app-content{position:relative;z-index:1}.theme-aware-text{color:var(--text-main)}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
