:root{--c4s-bg:#eef2f7;--c4s-bg-panel:#fff;--c4s-bg-soft:#f5f8fc;--c4s-sidebar:#0b1526;--c4s-sidebar-2:#122033;--c4s-accent:#0f9f9c;--c4s-accent-2:#1a7fbf;--c4s-accent-soft:#0f9f9c1f;--c4s-text:#1a2433;--c4s-text-secondary:#5b6b7c;--c4s-border:#d7e0ea;--c4s-radius:10px;--c4s-font:"IBM Plex Sans", "PingFang SC", "Microsoft YaHei", sans-serif;--c4s-font-display:"Orbitron", "IBM Plex Sans", sans-serif;--el-color-primary:#0f9f9c;--el-color-primary-light-3:#3fb5b2;--el-color-primary-light-5:#6fc8c6;--el-color-primary-light-7:#9fdad9;--el-color-primary-light-9:#e7f7f6;--el-color-primary-dark-2:#0c7f7d;--el-border-radius-base:8px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body,#app{width:100%;height:100%;font-family:var(--c4s-font);background:var(--c4s-bg);color:var(--c4s-text);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}.page-shell{position:relative}.page-shell:before{content:"";pointer-events:none;z-index:0;background-image:linear-gradient(#1a7fbf09 1px,#0000 1px),linear-gradient(90deg,#1a7fbf09 1px,#0000 1px);background-size:28px 28px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(at top,#000 35%,#0000 75%);mask-image:radial-gradient(at top,#000 35%,#0000 75%)}.page-shell>*{z-index:1;position:relative}.el-card{border:1px solid var(--c4s-border)!important;border-radius:var(--c4s-radius)!important;background:linear-gradient(#fff 0%,#fbfcfe 100%)!important;box-shadow:0 1px #0f233c08!important}.el-card__header{color:var(--c4s-text);font-weight:600;border-bottom:1px solid var(--c4s-border)!important}.card-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.page-fade-enter-active,.page-fade-leave-active{transition:opacity .18s,transform .18s}.page-fade-enter-from,.page-fade-leave-to{opacity:0;transform:translateY(6px)}.toolbar{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:16px;display:flex}.toolbar .spacer{flex:1}.stat-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:14px;display:grid}.stat-card{border:1px solid var(--c4s-border);border-radius:var(--c4s-radius);background:linear-gradient(160deg,#fff 0%,#f7fafc 100%);padding:18px 16px}.stat-card .label{color:var(--c4s-text-secondary);margin-bottom:8px;font-size:13px}.stat-card .value{font-family:var(--c4s-font-display);letter-spacing:.02em;color:var(--c4s-text);font-size:28px;line-height:1.1}.stat-card .sub{color:var(--c4s-text-secondary);margin-top:8px;font-size:12px}
