body{background:#f4f7fb;color:#1c2b41;font-family:system-ui,"Microsoft YaHei",sans-serif}.shell{display:flex;min-height:100vh}.sidebar{width:228px;background:#102b48;color:#fff;padding:24px 14px;flex:none}.brand{font-size:22px;font-weight:750;padding:0 14px 28px;letter-spacing:1px}.brand span{display:block;font-size:12px;opacity:.65;font-weight:400;margin-top:6px}.sidebar .nav-link{color:#b9ccdc;border-radius:10px;padding:12px 16px;margin:2px 0}.sidebar .nav-link:hover,.sidebar .nav-link.active{background:#1f527d;color:white}.main{flex:1;min-width:0}.topbar{height:70px;background:white;border-bottom:1px solid #e4ebf2;display:flex;align-items:center;justify-content:space-between;padding:0 32px}.topbar small{color:#7b8795}.user{border-radius:20px;background:#ecf4fb;color:#22628d;padding:7px 14px;font-size:13px}.content{max-width:1480px;margin:auto;padding:28px 32px}.pagehead{display:flex;justify-content:space-between;align-items:end;margin-bottom:22px}.pagehead h1{font-size:28px;font-weight:720;margin:0}.eyebrow{font-size:11px;letter-spacing:2px;color:#4984ad;margin:0 0 7px}.muted{font-size:13px;color:#8c98a7}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:20px}.stat{background:white;border:1px solid #e4ebf2;border-radius:14px;padding:22px}.stat span{color:#78899a;font-size:13px;display:block}.stat strong{font-size:32px;display:block;margin-top:8px}.card{border:1px solid #e4ebf2;box-shadow:0 3px 12px #1e426008;border-radius:14px;margin-bottom:20px}.card-header{font-weight:650;background:white;border-radius:14px 14px 0 0;padding:17px 20px}.card-body{padding:20px}.inline{display:inline}.table{vertical-align:middle;font-size:14px}.table th{white-space:nowrap;color:#647a8d;font-weight:600}.btn{border-radius:8px}@media(max-width:850px){.shell{display:block}.sidebar{width:auto;padding:12px}.brand{padding:6px 10px 10px}.sidebar .nav{flex-direction:row;overflow:auto;flex-wrap:nowrap}.sidebar .nav-link{white-space:nowrap}.topbar{height:auto;padding:15px}.content{padding:18px}.pagehead{display:block}.stats{grid-template-columns:repeat(2,1fr)}}
