:root{color:#343a40;font-synthesis:none;background:#f4f6f9;font-family:Microsoft YaHei,PingFang SC,Arial,sans-serif}*{box-sizing:border-box}html,body,#app{min-width:1080px;min-height:100vh;margin:0}body{background:#f4f6f9}a{color:inherit;text-decoration:none}.admin-shell{min-height:100vh}.admin-sidebar{z-index:20;color:#c2c7d0;background:#343a40;transition:width .2s;position:fixed;inset:0 auto 0 0;overflow:hidden;box-shadow:2px 0 8px #0000001f}.admin-brand{color:#fff;white-space:nowrap;border-bottom:1px solid #ffffff1f;align-items:center;height:57px;padding:0 17px;display:flex}.brand-short{letter-spacing:.4px;font-size:17px;font-weight:700}.brand-name{margin-left:10px;font-size:18px;font-weight:400}.edition-row{color:#8f9aa3;padding:10px 14px 2px;font-size:12px}.edition-row span{border-left:3px solid #1683f8;padding-left:8px}.menu-search{padding:11px 12px 8px}.menu-search .el-input__wrapper{background:#ffffff14;box-shadow:inset 0 0 0 1px #ffffff1f}.menu-search .el-input__inner{color:#fff}.menu-search .el-input__inner::placeholder{color:#98a0a7}.sidebar-scroll{height:calc(100vh - 126px)}.admin-menu{background:0 0!important;border:0!important}.admin-menu.el-menu--collapse{width:64px}.admin-menu .el-menu-item,.admin-menu .el-sub-menu__title{color:#c2c7d0;height:43px;line-height:43px}.admin-menu>.el-menu-item,.admin-menu>.el-sub-menu>.el-sub-menu__title{border-radius:4px;margin:3px 8px}.admin-menu .el-menu-item:hover,.admin-menu .el-sub-menu__title:hover{color:#fff;background:#ffffff14}.admin-menu>.el-menu-item.is-active,.admin-menu>.el-sub-menu.is-opened>.el-sub-menu__title{color:#fff;background:#1683f8}.admin-menu .el-sub-menu .el-menu{background:#2f353b}.admin-menu .el-sub-menu .el-sub-menu__title{font-size:13px;padding-left:42px!important}.admin-menu .el-sub-menu .el-menu-item{min-width:0;height:36px;font-size:13px;line-height:36px;padding-left:54px!important}.admin-menu .el-sub-menu .el-menu-item.is-active{color:#fff;background:0 0}.admin-menu .el-sub-menu .el-menu-item.is-active .menu-dot{background:#1683f8;box-shadow:0 0 0 3px #1683f838}.menu-dot{background:#78828b;border-radius:50%;width:5px;height:5px;margin-right:9px}.admin-main{min-width:0;margin-left:238px;transition:margin-left .2s}.is-collapsed .admin-main{margin-left:64px}.admin-topbar{z-index:12;background:#fff;border-bottom:1px solid #dee2e6;align-items:center;height:57px;padding:0 18px 0 8px;display:flex;position:sticky;top:0}.collapse-button{width:44px;color:#6c757d!important}.topbar-spacer{flex:1}.admin-user{color:#495057;cursor:pointer;align-items:center;gap:6px;padding:8px 10px;display:inline-flex}.page-bar{background:#f4f6f9;justify-content:space-between;align-items:center;min-height:72px;padding:14px 22px;display:flex}.page-bar h1{color:#343a40;margin:0;font-size:24px;font-weight:400}.admin-content{background:#f4f6f9;padding:0 22px 26px;overflow:visible}.admin-footer{color:#6c757d;background:#fff;border-top:1px solid #dee2e6;padding:14px 22px;font-size:13px}.page-head{background:#fff;border:1px solid #dee2e6;border-radius:3px;justify-content:space-between;align-items:center;margin-bottom:14px;padding:15px 18px;display:flex}.page-head h1{margin:0;font-size:18px;font-weight:500}.page-head p{color:#6c757d;margin:5px 0 0;font-size:13px}.toolbar{align-items:center;gap:8px;display:flex}.metric-grid{grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:18px;display:grid}.metric{color:#fff;border-radius:4px;min-height:112px;padding:18px 20px;position:relative;overflow:hidden;box-shadow:0 1px 1px #0000001a}.metric:nth-child(4n+1){background:#17a2b8}.metric:nth-child(4n+2){background:#28a745}.metric:nth-child(4n+3){color:#2d3135;background:#ffc107}.metric:nth-child(4n+4){background:#dc3545}.metric label{opacity:.9;font-size:13px;display:block}.metric strong{margin:7px 0 3px;font-size:31px;line-height:1;display:block}.metric small{color:inherit;opacity:.85;font-size:12px}.panel{background:#fff;border:1px solid #dee2e6;border-radius:3px;padding:18px;box-shadow:0 1px 2px #0000000a}.panel+.panel{margin-top:18px}.panel-title{border-bottom:1px solid #dee2e6;justify-content:space-between;align-items:center;margin:-18px -18px 16px;padding:13px 18px;display:flex}.panel-title h3{margin:0;font-size:16px;font-weight:500}.muted{color:#6c757d}.mono{font-family:Cascadia Code,Consolas,monospace;font-size:12px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px;display:grid}.wide{grid-column:1/-1}.status-dot{background:#adb5bd;border-radius:50%;width:8px;height:8px;margin-right:6px;display:inline-block}.status-dot.ok{background:#28a745}.status-dot.warn{background:#ffc107}.json-editor textarea{font-family:Cascadia Code,Consolas,monospace!important;font-size:12px!important}.quick-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.quick-entry{cursor:pointer;border:1px solid #e1e5e8;border-radius:3px;align-items:center;min-height:70px;padding:14px 16px;transition:all .15s;display:flex}.quick-entry:hover{color:#1683f8;border-color:#8fc3fb;transform:translateY(-1px);box-shadow:0 3px 10px #1683f814}.quick-entry b{font-size:14px;display:block}.quick-entry span{color:#7d858c;margin-top:4px;font-size:12px;display:block}.quick-icon{color:#fff;background:#1683f8;border-radius:4px;place-items:center;width:38px;height:38px;margin-right:12px;display:grid}.order-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:18px;display:grid}.order-grid .panel+.panel{margin-top:0}.summary-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 22px;display:grid}.summary-list>div{border-bottom:1px solid #eef0f2;justify-content:space-between;align-items:center;padding:10px 0;display:flex}.summary-list span{color:#6c757d;font-size:13px}.summary-list strong{color:#343a40;font-size:16px}.legacy-page{background:#fff;border:1px solid #dee2e6;border-radius:3px;min-height:calc(100vh - 195px)}.legacy-toolbar{border-bottom:1px solid #dee2e6;align-items:center;gap:12px;padding:10px 14px;display:flex}.legacy-toolbar p{color:#6c757d;flex:1;margin:0;font-size:13px}.legacy-frame{background:#fff;border:0;width:100%;min-height:calc(100vh - 255px);display:block}.legacy-loading{min-height:360px}@media (width<=1280px){.quick-grid{grid-template-columns:repeat(2,1fr)}.metric-grid{gap:12px}.order-grid{grid-template-columns:1fr}}
