:root{--brand: #1677ff;--brand-deep: #0958d9;--brand-gradient: linear-gradient(135deg, #1677ff 0%, #0958d9 100%);--brand-bg: #e6f4ff;--success: #52c41a;--warning: #faad14;--warning-deep: #fa8c16;--error: #ff4d4f;--purple: #722ed1;--text-main: #1f1f1f;--text-secondary: #595959;--text-hint: #8c8c8c;--bg-page: #f5f7fa;--bg-card: #ffffff;--bg-hover: #f5f8ff;--border: #e8ecf1;--divider: #f0f0f0}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Helvetica Neue,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--bg-page)}#root{min-height:100vh;display:flex;flex-direction:column}.page-fade-enter{opacity:0;transform:translateY(10px)}.page-fade-enter-active{opacity:1;transform:translateY(0);transition:opacity .25s ease,transform .25s ease}.hoverable-card{transition:box-shadow .3s ease,transform .2s ease,border-color .2s ease}.hoverable-card:hover{box-shadow:0 4px 12px #00000014;transform:translateY(-2px)}.stat-card{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:20px 24px;transition:box-shadow .3s ease,transform .2s ease;cursor:default}.stat-card:hover{box-shadow:0 4px 16px #00000014;transform:translateY(-2px)}.stat-card .stat-num{font-size:28px;font-weight:700;line-height:1.3;font-variant-numeric:tabular-nums}.stat-card .stat-label{font-size:13px;color:var(--text-hint)}.brand-banner{background:var(--brand-gradient);border-radius:12px;color:#fff}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-thumb{background-color:#00000026;border-radius:3px;transition:background-color .3s}::-webkit-scrollbar-thumb:hover{background-color:#00000047}::-webkit-scrollbar-track{background-color:transparent}.ant-layout-sider ::-webkit-scrollbar-thumb{background-color:#fff3}.ant-layout-sider ::-webkit-scrollbar-thumb:hover{background-color:#ffffff59}.ant-pro-table-search{padding:16px!important;background:#f7f9fc!important;border-radius:10px;margin-bottom:16px!important;border:1px solid var(--divider)}.ant-table-row{transition:background-color .2s ease}.ant-btn{transition:all .2s ease}.page-gap{margin-top:20px}.page-gap-sm{margin-top:12px}.page-gap-lg{margin-top:28px}.page-padding{padding:24px}.flex-col{display:flex;flex-direction:column}.flex-row{display:flex;flex-direction:row}.flex-wrap{flex-wrap:wrap}.flex-1{flex:1}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-8{gap:8px}.gap-12{gap:12px}.gap-16{gap:16px}.gap-20{gap:20px}.overflow-hidden{overflow:hidden}.overflow-auto{overflow:auto}.hover-row{transition:background .2s ease;cursor:pointer}.hover-row:hover{background:var(--bg-hover)}.user-chip{display:flex;align-items:center;gap:8px;padding:4px 12px 4px 4px;border-radius:999px;cursor:pointer;transition:background .2s ease}.user-chip:hover{background:var(--bg-hover)}.page-title{font-size:16px;font-weight:600;color:var(--text-main);line-height:1.5;margin-bottom:0}.ant-modal,.ant-drawer{word-break:break-word}.ant-modal-body,.ant-drawer-body{max-height:calc(100vh - 110px);overflow-y:auto}.ant-table-wrapper{width:100%}.table-dense .ant-table{font-size:13px}.table-dense .ant-table-thead>tr>th{padding:10px 8px;font-size:13px}.table-dense .ant-table-tbody>tr>td{padding:10px 8px}.ant-table-thead>tr>th.ant-table-cell{font-weight:600}.ant-table-tbody>tr>td{font-variant-numeric:tabular-nums}.ant-card{box-shadow:0 1px 3px #1f2d410a}.ant-modal-mask{background:#0f1b2d73}.ant-dropdown .ant-dropdown-menu,.ant-popover .ant-popover-inner{border-radius:10px}.ant-form-item .ant-form-item-label>label{color:var(--text-secondary)}.ant-tabs-card>.ant-tabs-nav .ant-tabs-tab{transition:color .2s ease,background .2s ease,border-color .2s ease}.ant-table-expanded-row-fixed{max-width:calc(100vw - 320px)!important;overflow-x:auto!important}
