:root{font-family:Inter,PingFang SC,Microsoft YaHei,sans-serif;color:#152238;background:#f3f5f8;font-synthesis:none;--ink: #0c1728;--muted: #6f7c8f;--line: #e4e9f0;--brand: #176b5b;--brand-soft: #e7f2ef;--accent: #da9d43;--danger: #c64d50}*{box-sizing:border-box}body{margin:0;min-width:320px;background:#f3f5f8}button,input{font:inherit}.app-shell{min-height:100vh;display:flex}.sidebar{width:232px;position:fixed;inset:0 auto 0 0;z-index:10;background:#081321;color:#fff;transition:width .2s;overflow:hidden}.sidebar.collapsed{width:64px}.mobile-menu-button,.sidebar-backdrop{display:none}.brand{height:78px;padding:19px 17px;display:flex;align-items:center;gap:11px;cursor:pointer;border-bottom:1px solid #1b2a3c}.brand-mark{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;font-family:Georgia,serif;font-size:23px;background:linear-gradient(145deg,#d6aa65,#8b6735);color:#07111e;flex:0 0 auto}.brand strong{display:block;font-size:17px;letter-spacing:2px;white-space:nowrap}.brand span{display:block;color:#6f8198;font-size:8px;letter-spacing:1.7px;margin-top:4px;white-space:nowrap}.side-menu{border:0!important;background:transparent!important;padding:12px 8px}.side-menu .el-menu-item{color:#9aa9bc;border-radius:7px;height:42px;margin:3px 0}.side-menu .el-menu-item:hover{background:#122236;color:#fff}.side-menu .el-menu-item.is-active{color:#e9bd77;background:#182a3c;box-shadow:inset 2px 0 #d3a35e}.menu-label{color:#52647b;font-size:10px;letter-spacing:1.5px;padding:18px 12px 5px;text-transform:uppercase}.research-note{position:absolute;bottom:20px;left:20px;color:#607187;font-size:11px;line-height:1.7;border-left:2px solid #8b6735;padding-left:10px}.main-area{margin-left:232px;width:calc(100% - 232px);min-height:100vh}.collapsed+.main-area{margin-left:64px;width:calc(100% - 64px)}.topbar{height:78px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 30px;position:sticky;top:0;z-index:5}.topbar h1{font-size:21px;margin:1px 0 0}.eyebrow{font-size:9px;letter-spacing:1.8px;color:#9aa4b2;margin:0}.top-actions{display:flex;align-items:center;gap:10px;font-size:12px;color:var(--muted)}.status-dot{width:7px;height:7px;border-radius:50%;background:#36a27f;box-shadow:0 0 0 4px #e4f5ef}.page-container{padding:24px 28px 40px;max-width:1680px;margin:auto}.page-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:18px}.page-head h2{font-size:22px;margin:0 0 5px}.page-head p{color:var(--muted);margin:0;font-size:13px}.toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.panel{min-width:0;overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:0 3px 16px #0c172809}.panel-head{padding:18px 20px 12px;display:flex;justify-content:space-between;align-items:center;gap:12px}.panel-head h3{font-size:15px;margin:0}.panel-body{padding:4px 20px 20px;min-width:0}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px}.metric-card{background:#fff;border:1px solid var(--line);border-radius:9px;padding:18px;position:relative;overflow:hidden}.metric-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--brand)}.metric-label{font-size:12px;color:var(--muted)}.metric-value{font-family:Georgia,Times New Roman,serif;font-size:29px;margin:9px 0 3px;color:var(--ink)}.metric-note{font-size:11px;color:#97a1af}.split-grid{display:grid;grid-template-columns:1.65fr 1fr;gap:18px}.stack{display:grid;gap:18px}.notice{padding:13px 16px;background:#fffaf0;border:1px solid #eee0c6;border-radius:8px;color:#7d6239;font-size:12px}.empty-block{min-height:280px;display:grid;place-items:center;text-align:center;color:var(--muted)}.empty-block strong{display:block;color:var(--ink);font-size:16px;margin-bottom:7px}.code{font-family:Cascadia Code,monospace;font-size:12px}.positive{color:#bd3f43}.negative{color:#168260}.muted{color:var(--muted)}.el-table{width:100%;--el-table-header-bg-color:#f7f8fa;--el-table-border-color:#edf0f4;--el-table-row-hover-bg-color:#f7fbfa }.el-table th.el-table__cell{font-weight:600;color:#526074;font-size:12px}.el-table .cell{font-size:12px}.el-card{border-color:var(--line)!important}.el-button--primary{--el-button-bg-color:#176b5b;--el-button-border-color:#176b5b;--el-button-hover-bg-color:#23806d;--el-button-hover-border-color:#23806d}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.form-grid .el-input-number,.form-grid .el-select,.form-grid .el-date-editor{width:100%}@media(max-width:1200px){.metric-grid{grid-template-columns:repeat(2,1fr)}.split-grid{grid-template-columns:1fr}}@media(max-width:900px){.sidebar{width:232px!important;transform:translate(-100%);transition:transform .2s;box-shadow:8px 0 24px #050f1b33}.sidebar.mobile-open{transform:translate(0)}.sidebar.mobile-open .brand>div:last-child,.sidebar.mobile-open .menu-label,.sidebar.mobile-open .research-note{display:block}.sidebar.mobile-open .el-menu--collapse{width:auto}.sidebar-backdrop{display:block;position:fixed;inset:0;z-index:9;border:0;background:#040c1673}.main-area,.collapsed+.main-area{width:100%;margin-left:0}.topbar{height:68px;padding:0 18px;justify-content:flex-start;gap:12px}.mobile-menu-button{display:grid;place-items:center;width:38px;height:38px;padding:0;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);font-size:20px;cursor:pointer}.topbar-title{min-width:0}.topbar h1{font-size:18px}.top-actions{margin-left:auto}.top-actions .el-tag{display:none}.page-container{padding:20px 18px 32px}.page-head{align-items:flex-start;gap:14px}.page-head>div:first-child{min-width:0}.el-dialog{max-width:calc(100vw - 24px)}.el-drawer{max-width:92vw}}@media(max-width:600px){.eyebrow,.top-actions .status-dot,.top-actions>span:not(.status-dot){display:none}.topbar{padding:0 12px}.page-container{padding:16px 12px 28px}.page-head{display:grid}.page-head h2{font-size:20px}.page-head p{line-height:1.55}.toolbar{width:100%}.toolbar>.el-date-editor,.toolbar>.el-select{flex:1;min-width:135px}.metric-grid{grid-template-columns:1fr;gap:10px}.metric-card{padding:15px}.metric-value{font-size:25px}.panel-head{padding:15px 14px 10px;align-items:flex-start;flex-wrap:wrap}.panel-body{padding:4px 14px 16px}.form-grid{grid-template-columns:1fr;gap:0}.el-dialog__body,.el-dialog__footer{padding-left:16px;padding-right:16px}.notice{line-height:1.65}}
