*{margin:0;padding:0;box-sizing:border-box}html,body,#root{height:100%}:root{--accent: #0ea5a4;--accent-deep: #0b8281;--accent-soft: #e6f7f6;--rail: #0f172a;--ink-900: #0f172a;--ink-700: #334155;--ink-500: #64748b;--ink-400: #94a3b8;--line: #e8ecf1;--line-soft: #eef1f5;--canvas: #f4f6f9;--surface: #ffffff;--up: #16a34a;--down: #dc2626;--info: #2563eb;--warn: #d97706;--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 20px;--sp-6: 24px;--sp-8: 32px;--r-sm: 8px;--r-md: 12px;--r-lg: 16px;--shadow-sm: 0 1px 2px rgba(15, 23, 42, .04);--shadow-md: 0 1px 3px rgba(15, 23, 42, .06), 0 8px 24px rgba(15, 23, 42, .05);--shadow-lg: 0 12px 32px rgba(15, 23, 42, .1);--shadow-accent: 0 10px 28px rgba(14, 165, 164, .18)}@keyframes fadeUp{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes popIn{0%{opacity:0;transform:scale(.97) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes floatOrb{0%,to{transform:translate(0) scale(1)}50%{transform:translate(18px,-22px) scale(1.06)}}@keyframes gradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif;background-color:var(--canvas);background-image:radial-gradient(900px 460px at 100% -6%,rgba(14,165,164,.07),transparent 60%),linear-gradient(180deg,#f6f8fb,#f2f4f8);background-attachment:fixed;color:var(--ink-700);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}.app-content-anim{animation:fadeUp .42s cubic-bezier(.22,1,.36,1)}.app-canvas{max-width:1400px;margin:0 auto}.h-page{font-size:20px;font-weight:700;line-height:1.3;color:var(--ink-900);letter-spacing:-.01em}.section-title{font-size:13px;font-weight:600;color:var(--ink-500);letter-spacing:.02em;margin-bottom:var(--sp-3);display:flex;align-items:center;gap:6px}.ant-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--shadow-md);transition:transform .28s cubic-bezier(.22,1,.36,1),box-shadow .28s ease,border-color .28s ease}.ant-card>.ant-card-head{border-bottom:1px solid var(--line-soft);min-height:48px;padding:0 var(--sp-5)}.ant-card>.ant-card-head .ant-card-head-title{font-size:15px;font-weight:600;color:var(--ink-900);padding:12px 0}.ant-card>.ant-card-body{padding:var(--sp-5)}.ant-card-hoverable{cursor:pointer}.ant-card-hoverable:hover{box-shadow:var(--shadow-accent);transform:translateY(-3px);border-color:#0ea5a466}.kpi-card{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--shadow-md);padding:var(--sp-5);overflow:hidden;transition:transform .28s cubic-bezier(.22,1,.36,1),box-shadow .28s ease,border-color .28s ease}.kpi-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-accent);border-color:#0ea5a459}.kpi-label{font-size:13px;color:var(--ink-500);font-weight:500;margin-bottom:10px;white-space:nowrap}.kpi-value{font-size:28px;font-weight:700;line-height:1.1;color:var(--ink-900);letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}.kpi-value .kpi-unit{font-size:15px;font-weight:600;color:var(--ink-500);margin-left:2px}.kpi-badge{position:absolute;top:var(--sp-5);right:var(--sp-5);width:40px;height:40px;border-radius:11px;display:flex;align-items:center;justify-content:center;font-size:20px}.icon-stat-badge{transition:transform .3s cubic-bezier(.22,1,.36,1),box-shadow .3s ease}.ant-card:hover .icon-stat-badge,.icon-stat:hover .icon-stat-badge,.kpi-card:hover .kpi-badge{transform:scale(1.08) rotate(-3deg)}.ant-statistic-title{color:var(--ink-500);font-size:13px;margin-bottom:6px}.ant-statistic-content{font-variant-numeric:tabular-nums;font-feature-settings:"tnum";letter-spacing:-.01em}.ant-modal-content{animation:popIn .32s cubic-bezier(.22,1,.36,1);border-radius:var(--r-lg)}.ant-modal-header{margin-bottom:var(--sp-4)!important}.ant-btn-primary{transition:transform .18s cubic-bezier(.22,1,.36,1),box-shadow .18s ease,filter .18s ease}.ant-btn-primary:not(:disabled):hover{transform:translateY(-2px);box-shadow:0 8px 20px #0ea5a452;filter:brightness(1.04)}.ant-btn-primary:not(:disabled):active{transform:translateY(0)}.ant-btn:not(.ant-btn-primary){transition:transform .16s ease,background .2s ease,color .2s ease}.app-sider{border-right:1px solid rgba(255,255,255,.06);box-shadow:2px 0 16px #0f172a2e}.app-sider .ant-menu{background:transparent!important}.app-sider .ant-menu-item,.app-sider .ant-menu-submenu-title{color:#e2e8f0b8!important;transition:background .22s ease,color .22s ease,transform .18s ease!important}.app-sider .ant-menu-item .anticon,.app-sider .ant-menu-submenu-title .anticon{color:#e2e8f099!important}.app-sider .ant-menu-item:not(.ant-menu-item-selected):hover,.app-sider .ant-menu-submenu-title:hover{color:#fff!important;background:#ffffff0f!important;transform:translate(3px)}.app-sider .ant-menu-item:not(.ant-menu-item-selected):hover .anticon,.app-sider .ant-menu-submenu-title:hover .anticon{color:#2dd4bf!important}.app-sider .ant-menu-sub.ant-menu-inline{background:#0000002e!important}.app-sider .ant-menu-item-selected{background:linear-gradient(135deg,#0ea5a4,#0b8281)!important;color:#fff!important;box-shadow:0 8px 20px #0ea5a466}.app-sider .ant-menu-item-selected .anticon{color:#fff!important}.app-sider .ant-menu-submenu-selected>.ant-menu-submenu-title{color:#2dd4bf!important}.app-sider .ant-menu-submenu-selected>.ant-menu-submenu-title .anticon{color:#2dd4bf!important}.ant-list-item,.ant-table-tbody>tr.ant-table-row{animation:fadeUp .4s cubic-bezier(.22,1,.36,1) both}.ant-list-item:nth-child(1),.ant-table-tbody>tr.ant-table-row:nth-child(1){animation-delay:.02s}.ant-list-item:nth-child(2),.ant-table-tbody>tr.ant-table-row:nth-child(2){animation-delay:.06s}.ant-list-item:nth-child(3),.ant-table-tbody>tr.ant-table-row:nth-child(3){animation-delay:.1s}.ant-list-item:nth-child(4),.ant-table-tbody>tr.ant-table-row:nth-child(4){animation-delay:.14s}.ant-list-item:nth-child(5),.ant-table-tbody>tr.ant-table-row:nth-child(5){animation-delay:.18s}.ant-list-item:nth-child(6),.ant-table-tbody>tr.ant-table-row:nth-child(6){animation-delay:.22s}.ant-list-item:nth-child(7),.ant-table-tbody>tr.ant-table-row:nth-child(7){animation-delay:.26s}.ant-list-item:nth-child(n+8),.ant-table-tbody>tr.ant-table-row:nth-child(n+8){animation-delay:.3s}.app-header{box-shadow:0 1px #0f172a0f}.ant-table{background:transparent;border-radius:var(--r-md);font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}.ant-table-thead>tr>th{font-weight:600!important;font-size:13px;color:var(--ink-500)!important;text-transform:none;border-bottom:1px solid var(--line)!important}.ant-table-tbody>tr>td{border-bottom:1px solid var(--line-soft)!important;transition:background .2s ease}.ant-table-wrapper .ant-table-cell{padding-top:12px;padding-bottom:12px}.ant-pagination{margin-top:var(--sp-4)!important}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:#0f172a38;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#0ea5a480}::-webkit-scrollbar-track{background:transparent}::selection{background:#0ea5a438}
