.ant-table-wrapper .ant-table-thead>tr>th{position:sticky;top:0;z-index:3}.ant-table-wrapper .ant-table-thead>tr>th.ant-table-cell-fix-left,.ant-table-wrapper .ant-table-thead>tr>th.ant-table-cell-fix-right{z-index:4;background:#fafafa}.ant-table-wrapper .ant-table-tbody>tr>td.ant-table-cell-fix-left,.ant-table-wrapper .ant-table-tbody>tr>td.ant-table-cell-fix-right{z-index:2;background:#fff}.ant-table-wrapper .ant-table-tbody>tr:hover>td.ant-table-cell-fix-left,.ant-table-wrapper .ant-table-tbody>tr:hover>td.ant-table-cell-fix-right{background:#fafafa}*{box-sizing:border-box}html,body,#root{height:100%;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Helvetica Neue,Arial,sans-serif;background:#f5f6f8}.fullscreen-center{height:100vh;display:flex;align-items:center;justify-content:center}.login-page{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px;background:radial-gradient(1100px 560px at 12% -5%,rgba(34,154,82,.2),transparent 62%),radial-gradient(900px 520px at 102% 104%,rgba(34,154,82,.16),transparent 58%),linear-gradient(160deg,#f3f8f4,#ecf4ef 45%,#e7f2ea)}.login-card{width:420px;max-width:100%;background:#fff;border-radius:16px;padding:40px 36px 24px;border:1px solid rgba(34,154,82,.1);box-shadow:0 20px 50px #0f2e1d24,0 2px 8px #0f2e1d0f}.login-logo{display:flex;justify-content:center;margin-bottom:14px}.login-logo img{width:84px;height:84px;display:block}.login-title{text-align:center;margin-bottom:4px;font-size:22px;font-weight:700;letter-spacing:1px;color:#15301f}.login-sub{text-align:center;color:#8c9a92;font-size:13px;margin-bottom:26px}.login-foot{margin-top:18px;padding-top:14px;border-top:1px solid #eef2ef;text-align:center;font-size:12px;color:#9aa8a0;line-height:1.8}.login-legal{margin-top:18px;text-align:center;font-size:12px;color:#9aa8a0;line-height:1.8}.login-legal a{color:inherit;text-decoration:none}.login-legal a:hover{color:#229a52;text-decoration:underline}.map-empty{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;pointer-events:none}.brand{height:56px;display:flex;align-items:center;gap:10px;padding:0 16px;color:#fff;font-weight:600;letter-spacing:.5px;overflow:hidden;white-space:nowrap;border-bottom:1px solid rgba(255,255,255,.08)}.brand-logo{width:28px;height:28px;flex:0 0 28px;display:block;filter:brightness(1.08)}.brand-text{font-size:15px}.app-header{background:#fff;padding:0 16px;display:flex;align-items:center;border-bottom:1px solid #eef0f3;height:56px;line-height:56px;flex:0 0 56px}.app-content{padding:20px;overflow:auto;min-height:0;flex:1 1 auto}body{background:linear-gradient(180deg,#f6f8fc,#edf1f7);background-attachment:fixed}:where(.ant-layout){background:transparent}.page-card{background:#fff;border-radius:10px;padding:20px;border:1px solid #e8ebf0;box-shadow:0 1px 2px #1018280a,0 1px 3px #10182808}.kpi-card{position:relative;overflow:hidden}.kpi-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:#229a52}.kpi-card--danger:before{background:#dc2626}.kpi-card--info:before{background:#2f6fe4}.kpi-card--gold:before{background:#d4a017}.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin-bottom:18px}.stat-card{background:#fff;border:1px solid #eef0f3;border-radius:10px;padding:16px 18px;cursor:pointer;transition:box-shadow .16s,transform .16s}.stat-card:hover{box-shadow:0 6px 18px #1668dc1f;transform:translateY(-1px)}.stat-label{color:#8c8c8c;font-size:13px;margin-bottom:8px}.stat-value{font-size:26px;font-weight:600;line-height:1.15}.stat-value.danger{color:#d4380d}.stat-value.warn{color:#d48806}.stat-value.primary{color:#1668dc}.stat-hint{margin-top:6px;font-size:12px;color:#a6adb8}.text-muted{color:#8c8c8c}.mt-16{margin-top:16px}.mb-12{margin-bottom:12px}.nowrap{white-space:nowrap}.link-cell{color:#1668dc;cursor:pointer}
