*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{min-height:100vh}.sidebar{background:linear-gradient(180deg,#001529,#002140);min-height:100vh}.sidebar .logo{height:64px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:18px;font-weight:600;border-bottom:1px solid rgba(255,255,255,.1)}.sidebar .logo-icon{font-size:24px;margin-right:8px}.main-content{background:#f0f2f5;min-height:100vh}.page-header{background:#fff;padding:16px 24px;border-bottom:1px solid #f0f0f0}.page-content{padding:24px}.stat-card{background:#fff;border-radius:8px;padding:24px;height:100%;transition:box-shadow .3s}.stat-card:hover{box-shadow:0 4px 12px #0000001a}.stat-card .stat-icon{width:48px;height:48px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:24px;color:#fff}.stat-card .stat-value{font-size:32px;font-weight:600;color:#262626;margin:8px 0 4px}.stat-card .stat-label{font-size:14px;color:#8c8c8c}.data-table{background:#fff;border-radius:8px;padding:24px}.data-table .table-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.data-table .table-title{font-size:16px;font-weight:600;color:#262626}.status-badge{display:inline-flex;align-items:center;padding:4px 12px;border-radius:12px;font-size:12px}.status-badge.success{background:#f6ffed;color:#52c41a}.status-badge.warning{background:#fffbe6;color:#faad14}.status-badge.error{background:#fff2f0;color:#ff4d4f}.status-badge.processing{background:#e6f7ff;color:#1890ff}.empty-state{text-align:center;padding:48px 24px}.empty-state .empty-icon{font-size:64px;color:#d9d9d9;margin-bottom:16px}.empty-state .empty-text{font-size:14px;color:#8c8c8c;margin-bottom:24px}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn .3s ease-out}
