*{box-sizing:border-box;font-family:"Microsoft YaHei",Arial,sans-serif}
body{margin:0;background:#f5f7fb;color:#1f2937}
.sidebar{position:fixed;width:220px;height:100vh;background:#fff;border-right:1px solid #e5e7eb;padding:24px}
.logo{font-size:20px;font-weight:bold;color:#1677ff;margin-bottom:35px}
.menu a{display:block;padding:14px 12px;margin-bottom:8px;border-radius:8px;color:#4b5563;text-decoration:none}
.menu a.active{background:#eaf3ff;color:#1677ff}
.main{margin-left:220px;padding:28px}
.header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}
.btn{background:#1677ff;color:#fff;padding:10px 18px;border-radius:8px;border:none;cursor:pointer;text-decoration:none}
.cards{display:flex;gap:18px;margin-bottom:20px}
.card{background:#fff;border-radius:12px;padding:20px;flex:1;box-shadow:0 2px 8px #0000000a}
.card .label{color:#6b7280;font-size:14px}
.num{font-size:30px;font-weight:bold;margin-top:10px}
.panel{background:#fff;border-radius:12px;margin-top:20px;padding:20px}
table{width:100%;border-collapse:collapse}
th,td{text-align:left;padding:14px;border-bottom:1px solid #eee}
.tag{padding:4px 10px;border-radius:15px;background:#e8f5e9;color:#16a34a;font-size:12px}
.tag.warn{background:#fff7ed;color:#ea580c}
.tag.blue{background:#eff6ff;color:#2563eb}
.tag.gray{background:#f3f4f6;color:#6b7280}
form{margin-bottom:16px}
input[type=text]{padding:10px 12px;border:1px solid #e5e7eb;border-radius:8px;width:320px;margin-right:8px}
