:root{--color-primary: #2563eb;--color-primary-hover: #1d4ed8;--color-primary-light: #dbeafe;--color-primary-bg: #eff6ff;--color-success: #10b981;--color-warning: #f59e0b;--color-danger: #ef4444;--color-purple: #8b5cf6;--color-cyan: #06b6d4;--color-pink: #ec4899;--color-bg: #f5f7fa;--color-bg-elevated: #ffffff;--color-text: #1e293b;--color-text-secondary: #64748b;--color-text-tertiary: #94a3b8;--color-border: #e2e8f0;--color-border-light: #f1f5f9;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--shadow-xs: 0 1px 2px rgba(15, 23, 42, .04);--shadow-sm: 0 1px 3px rgba(15, 23, 42, .06), 0 1px 2px rgba(15, 23, 42, .04);--shadow-md: 0 4px 6px -1px rgba(15, 23, 42, .07), 0 2px 4px -2px rgba(15, 23, 42, .05);--shadow-lg: 0 10px 15px -3px rgba(15, 23, 42, .08), 0 4px 6px -4px rgba(15, 23, 42, .04);--shadow-xl: 0 20px 25px -5px rgba(15, 23, 42, .1), 0 8px 10px -6px rgba(15, 23, 42, .05);--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px}*{margin:0;padding:0;box-sizing:border-box}html,body,#root{height:100%}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,PingFang SC,Microsoft YaHei,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--color-bg);color:var(--color-text)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px;transition:background .2s}::-webkit-scrollbar-thumb:hover{background:#94a3b8}::-webkit-scrollbar-track{background:transparent}.page-fade-enter{opacity:0;transform:translateY(8px)}.page-fade-enter-active{opacity:1;transform:translateY(0);transition:opacity .3s ease,transform .3s ease}.page-content{animation:pageFadeIn .35s ease-out}@keyframes pageFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.ant-card{margin-bottom:0;border-radius:var(--radius-lg)!important;border-color:var(--color-border)!important;box-shadow:var(--shadow-sm);transition:box-shadow .25s ease,transform .25s ease}.ant-card.ant-card-hoverable:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.ant-card-head{border-bottom-color:var(--color-border-light)!important;font-weight:600}.ant-card-head-title{font-size:15px!important;color:var(--color-text)!important}.ant-statistic-title{font-size:13px!important;color:var(--color-text-secondary)!important;margin-bottom:4px!important}.ant-statistic-content{font-weight:600}.ant-table-thead>tr>th{background:#f8fafc!important;font-weight:600!important;font-size:13px!important;color:var(--color-text-secondary)!important;border-bottom-color:var(--color-border)!important}.ant-table-tbody>tr>td{font-size:13px!important;border-bottom-color:var(--color-border-light)!important}.ant-table-tbody>tr:nth-child(2n)>td{background:#fafbfc}.ant-table-tbody>tr:hover>td{background:var(--color-primary-bg)!important}.ant-btn{border-radius:var(--radius-md)}.ant-btn-primary{font-weight:500}.ant-input,.ant-input-affix-wrapper,.ant-input-password{border-radius:var(--radius-md)!important}.ant-menu-dark .ant-menu-item{border-radius:var(--radius-md);margin:4px 8px!important;width:calc(100% - 16px)!important}.ant-menu-dark .ant-menu-item-selected{background:#ffffff26!important;font-weight:500}.ant-menu-dark .ant-menu-item:hover:not(.ant-menu-item-selected){background:#ffffff14!important}.ant-dropdown-menu{border-radius:var(--radius-md)!important;box-shadow:var(--shadow-lg)!important}.ant-tag{border-radius:var(--radius-sm);font-weight:500}.ant-breadcrumb{font-size:13px}.ant-radio-button-wrapper{border-radius:0!important}.ant-radio-button-wrapper:first-child{border-radius:var(--radius-md) 0 0 var(--radius-md)!important}.ant-radio-button-wrapper:last-child{border-radius:0 var(--radius-md) var(--radius-md) 0!important}.stat-card{position:relative;overflow:hidden;border-radius:var(--radius-lg);background:var(--color-bg-elevated);box-shadow:var(--shadow-sm);transition:all .25s ease;cursor:default}.stat-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-3px)}.stat-card-icon{width:48px;height:48px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-size:22px;flex-shrink:0}a{color:var(--color-primary);text-decoration:none;transition:color .2s}a:hover{color:var(--color-primary-hover)}
