
:root{--brand:#6366f1;--brand2:#4f46e5;--ink:#1f2937;--sub:#6b7280;--line:#e5e7eb;--bg:#f5f5fb;--ok:#059669;--bad:#dc2626}
*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}
body{font-family:"PingFang SC","Microsoft YaHei",-apple-system,sans-serif;background:var(--bg);color:var(--ink);line-height:1.7}
a{color:inherit;text-decoration:none}
.shell{max-width:1200px;margin:0 auto;padding:20px 18px;display:flex;gap:20px}
.side{width:210px;flex-shrink:0;position:sticky;top:20px;align-self:flex-start}
.side .logo{font-weight:800;font-size:18px;color:var(--brand);display:block;margin-bottom:16px;padding:0 12px}
.side .grp{font-size:11px;color:#9ca3af;letter-spacing:1px;margin:14px 12px 6px}
.side a{display:flex;align-items:center;gap:9px;padding:9px 12px;border-radius:9px;font-size:14px;color:#4b5563;margin:2px 0}
.side a .ic{width:7px;height:7px;border-radius:2px;background:#c7d2fe}
.side a:hover,.side a.act{background:#eef2ff;color:var(--brand);font-weight:700}
.side a.act .ic{background:var(--brand)}
.main{flex:1;min-width:0}
.top{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:6px}
.top h1{font-size:22px;color:#0f172a}.top .crumb{font-size:13px;color:var(--sub)}
.cd{display:flex;align-items:center;gap:16px;background:linear-gradient(135deg,#6366f1,#4f46e5);color:#fff;border-radius:14px;padding:15px 20px;margin:14px 0;box-shadow:0 6px 18px rgba(99,102,241,.25)}
.cd .cl{font-size:13px;opacity:.9}.cd .ct{font-size:32px;font-weight:800;font-variant-numeric:tabular-nums}
.cd .cx{margin-left:auto;font-size:12px;opacity:.85;text-align:right}
.g4{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:14px 0}
.g4 .b{background:#fff;border-radius:12px;padding:14px;text-align:center;border:1px solid var(--line)}
.g4 .bn{font-size:23px;font-weight:800;color:var(--brand);font-variant-numeric:tabular-nums}
.g4 .bl{font-size:12px;color:var(--sub)}
.g4 .b.g .bn{color:var(--ok)}.g4 .b.r .bn{color:var(--bad)}
.card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:20px;margin:14px 0}
.card h2{font-size:18px;color:#0f172a;display:flex;align-items:center;gap:9px}
.card h2 .bar{width:5px;height:19px;border-radius:3px;background:var(--brand)}
.card .desc{font-size:13px;color:var(--sub);margin:6px 0 13px}
.links{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:14px 0}
.lk{background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px;display:block}
.lk:hover{border-color:var(--brand)}
.lk .li{font-size:16px;font-weight:800;color:var(--brand);margin-bottom:3px}
.lk .ld{font-size:13px;color:var(--sub)}
.tw{overflow-x:auto;border:1px solid var(--line);border-radius:11px}
table{width:100%;border-collapse:collapse;font-size:14px;min-width:720px}
thead th{background:var(--brand);color:#fff;padding:10px 9px;font-weight:600;font-size:13px;text-align:center;white-space:nowrap}
tbody td{padding:8px 9px;text-align:center;border-bottom:1px solid #eef0f6;white-space:nowrap;color:#374151}
tbody tr:nth-child(even){background:#fafaff}tbody tr:hover{background:#eef2ff}
td.s{font-weight:800;color:var(--brand)}
.q{display:inline-block;width:23px;height:23px;line-height:23px;border-radius:50%;background:var(--brand);color:#fff;font-style:normal;font-weight:700;font-size:12px;margin:0 2px;text-align:center}
.q:nth-child(3n+2){background:#818cf8}.q:nth-child(3n){background:#a5b4fc}
td.yc{font-weight:600}.ok{color:var(--ok);font-weight:800}.no{color:var(--bad);font-weight:800}
.pp{margin:14px 0;padding:14px 16px;border:1px solid var(--line);border-radius:12px}
.pp-h{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;flex-wrap:wrap;gap:6px}
.pp-h h3{font-size:15px}.pp-h span{font-size:12px;color:var(--sub)}
.foot{border-top:1px solid var(--line);margin-top:24px;padding:24px 0;font-size:13px;color:var(--sub)}
.foot .fb{font-weight:800;color:#0f172a;font-size:15px;margin-bottom:9px}
.foot .fl{display:flex;flex-wrap:wrap;gap:6px 16px;margin:9px 0}
.foot .fl a{color:var(--sub)}.foot .fl a:hover{color:var(--brand)}
@media(max-width:860px){.shell{flex-direction:column}.side{position:static;width:100%}.side a{display:inline-flex}.links{grid-template-columns:1fr}.g4{grid-template-columns:repeat(2,1fr)}.cd{flex-wrap:wrap}.cd .cx{margin-left:0;width:100%;text-align:left}}
