:root{color:#303133;font-synthesis:none;background:#f0f2f5;font-family:Microsoft YaHei,PingFang SC,Arial,sans-serif}*{box-sizing:border-box}body{min-width:320px;margin:0}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.62}.startup{color:#606266;background:#f0f2f5;place-items:center;min-height:100vh;font-size:14px;display:grid}.login-shell{background:#1f2d3d;place-items:center;min-height:100vh;padding:24px;display:grid}.login-panel{background:#fff;border-radius:4px;width:min(100%,390px);padding:30px 32px;box-shadow:0 10px 28px #0000002e}.product-mark{color:#fff;background:#409eff;justify-content:center;align-items:center;width:40px;height:40px;margin-bottom:18px;font-size:13px;font-weight:700;display:inline-flex}.login-panel h1{letter-spacing:0;margin:0 0 8px;font-size:21px;font-weight:500}.login-panel p{color:#909399;margin:0 0 24px;font-size:13px}.login-panel form{gap:15px;display:grid}.login-panel small{color:#909399;margin-top:20px;font-size:12px;line-height:1.7;display:block}.shell{grid-template-columns:200px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{color:#bfcbd9;background:#304156;flex-direction:column;display:flex}.brand{color:#fff;border-bottom:1px solid #ffffff14;align-items:center;gap:9px;height:50px;padding:0 17px;display:flex}.brand b{background:#409eff;border-radius:3px;place-items:center;width:27px;height:27px;font-size:11px;display:grid}.brand span{font-size:15px;font-weight:600}.nav-group{margin-top:13px}.nav-title{color:#8da4bc;padding:0 18px 6px;font-size:11px}.nav-item{color:#bfcbd9;text-align:left;background:0 0;border:0;border-left:3px solid #0000;border-radius:0;width:100%;padding:10px 18px;font-size:13px;display:block}.nav-item:hover{color:#fff;background:#263445}.nav-item.selected{color:#fff;background:#263445;border-left-color:#409eff}.sidebar-footer{color:#bfcbd9;border-top:1px solid #ffffff1a;gap:7px;margin-top:auto;padding:14px 18px;font-size:12px;display:grid}.link-button{color:#9fb3c8;text-align:left;background:0 0;border:0;padding:0;font-size:12px}.main{background:#f0f2f5;min-width:0}.topbar{background:#fff;border-bottom:1px solid #e4e7ed;justify-content:space-between;align-items:center;height:64px;padding:0 24px;display:flex;box-shadow:0 1px 4px #0015290f}.breadcrumb{color:#909399;margin-bottom:5px;font-size:12px}.breadcrumb span{color:#c0c4cc;padding:0 6px}.topbar h2{color:#303133;letter-spacing:0;margin:0;font-size:16px;font-weight:500}.session-label{color:#606266;background:#fff;border:1px solid #dcdfe6;border-radius:3px;padding:5px 9px;font-size:12px}.content{max-width:1600px;padding:18px 22px 42px}.section-head{background:#fff;border:1px solid #ebeef5;border-radius:3px;justify-content:space-between;align-items:center;gap:16px;min-height:44px;margin-bottom:14px;padding:0 14px;display:flex}.section-head h3{color:#303133;margin:0;font-size:15px;font-weight:500}.section-head p{color:#909399;margin:4px 0 0;font-size:12px;line-height:1.4}.metric-grid{grid-template-columns:repeat(5,minmax(145px,1fr));gap:14px;display:grid}.metric{background:#fff;border:1px solid #ebeef5;border-radius:3px;flex-direction:column;min-height:112px;padding:16px;display:flex}.metric span{color:#909399;font-size:12px}.metric strong{color:#303133;letter-spacing:0;margin-top:16px;font-size:23px;font-weight:500}.metric small{color:#a8abb2;margin-top:auto;font-size:12px}.info-panel{background:#ecf5ff;border:1px solid #d9ecff;border-left:3px solid #409eff;border-radius:3px;margin-top:14px;padding:13px 15px}.info-panel h4{color:#409eff;margin:0 0 6px;font-size:13px;font-weight:500}.info-panel p{color:#606266;margin:0;font-size:12px;line-height:1.7}.notice{border:1px solid;border-radius:3px;justify-content:space-between;align-items:center;gap:16px;margin:14px 22px -4px;padding:9px 13px;font-size:13px;display:flex}.notice button{color:inherit;background:0 0;border:0;font-size:12px}.notice.success{color:#67c23a;background:#f0f9eb;border-color:#c2e7b0}.notice.error{color:#f56c6c;background:#fef0f0;border-color:#fbc4c4}.state{color:#909399;background:#fff;border:1px solid #ebeef5;border-radius:3px;align-content:center;justify-items:start;gap:8px;min-height:100px;padding:20px;font-size:13px;display:grid}.error-state{color:#f56c6c}.table-card,.table-wrap{background:#fff;border:1px solid #ebeef5;border-radius:3px;overflow:hidden}.table-card .table-wrap{border:0;border-radius:0}.table-toolbar{background:#fff;border-bottom:1px solid #ebeef5;justify-content:space-between;align-items:center;min-height:54px;padding:8px 14px;display:flex}.inline-filter{color:#606266;align-items:center;gap:8px;font-size:13px;font-weight:400;display:flex}.inline-filter input{width:250px;height:32px}.table-tool-actions{gap:8px;display:flex}table{border-collapse:collapse;color:#606266;text-align:left;width:100%;min-width:780px;font-size:13px}th{color:#606266;white-space:nowrap;background:#f5f7fa;border-bottom:1px solid #ebeef5;padding:10px 12px;font-size:12px;font-weight:500}td{vertical-align:middle;border-bottom:1px solid #ebeef5;padding:10px 12px}tbody tr:hover td{background:#f5f7fa}tr:last-child td{border-bottom:0}td b{color:#303133;font-weight:500}td small{color:#909399;margin-top:3px;font-size:12px;display:block}.empty-row{color:#909399;text-align:center;padding:28px}.status{white-space:nowrap;border:1px solid;border-radius:3px;padding:2px 7px;font-size:12px;line-height:18px;display:inline-block}.status.active,.status.confirmed,.status.settled{color:#67c23a;background:#f0f9eb;border-color:#b3e19d}.status.pending,.status.provisioning,.status.frozen{color:#e6a23c;background:#fdf6ec;border-color:#f3d19e}.status.disabled,.status.refunded{color:#f56c6c;background:#fef0f0;border-color:#fbc4c4}.primary,.secondary,.danger{white-space:nowrap;border:1px solid;border-radius:3px;min-height:32px;padding:6px 12px;font-size:13px;line-height:18px}.primary{color:#fff;background:#409eff;border-color:#409eff}.primary:hover{background:#66b1ff;border-color:#66b1ff}.secondary{color:#606266;background:#fff;border-color:#dcdfe6}.secondary:hover{color:#409eff;background:#ecf5ff;border-color:#c6e2ff}.danger{color:#f56c6c;background:#fff;border-color:#fbc4c4}.danger:hover{background:#fef0f0;border-color:#f56c6c}.wide{width:100%;min-height:38px}.actions{gap:8px;display:flex}.subhead{color:#303133;border-left:3px solid #409eff;margin:22px 0 9px;padding-left:8px;font-size:14px;font-weight:500}.stack{gap:12px;display:grid}.catalog-block{background:#fff;border:1px solid #ebeef5;border-radius:3px;overflow:hidden}.catalog-block h4{color:#303133;border-bottom:1px solid #ebeef5;margin:0;padding:12px 15px;font-size:14px;font-weight:500}.catalog-row{color:#606266;border-bottom:1px solid #ebeef5;grid-template-columns:1.25fr 1fr 1.25fr auto;align-items:center;gap:16px;padding:11px 15px;font-size:13px;display:grid}.catalog-row:last-child{border-bottom:0}.catalog-row b{color:#303133;font-weight:500}.detail-summary{color:#606266;flex-wrap:wrap;gap:8px 16px;padding:14px 0;font-size:12px;display:flex}.segmented{border-bottom:1px solid #ebeef5;gap:0;margin-bottom:12px;display:flex}.segmented button{color:#606266;background:0 0;border:0;border-bottom:2px solid #0000;padding:8px 14px;font-size:13px}.segmented button.selected{color:#409eff;border-bottom-color:#409eff}.inline-actions{justify-content:space-between;align-items:center;gap:12px;margin:10px 0;display:flex}.inline-actions p{color:#909399;margin:0;font-size:12px}.diagnostics .metric strong.check-pass{color:#67c23a}.diagnostics .metric strong.check-warn{color:#e6a23c}.diagnostics .metric strong.check-fail{color:#f56c6c}label{color:#606266;gap:6px;font-size:13px;font-weight:400;display:grid}input,select{color:#303133;background:#fff;border:1px solid #dcdfe6;border-radius:3px;outline:none;width:100%;height:34px;padding:6px 10px;font-weight:400}input:focus,select:focus{border-color:#409eff}.form-error{color:#f56c6c;background:#fef0f0;border:1px solid #fbc4c4;border-radius:3px;padding:8px 10px;font-size:13px}.dialog-backdrop{z-index:20;background:#00000073;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.dialog{background:#fff;border-radius:4px;width:min(100%,560px);max-height:calc(100vh - 40px);padding:0 20px 20px;overflow:auto;box-shadow:0 5px 18px #0003}.dialog header{border-bottom:1px solid #ebeef5;justify-content:space-between;align-items:center;gap:8px;min-height:52px;display:flex}.dialog h3{color:#303133;overflow-wrap:anywhere;margin:0;font-size:16px;font-weight:500}.close{color:#909399;background:0 0;border:0;flex:0 0 28px;width:28px;height:28px;font-size:18px}.close:hover{color:#409eff}.form-grid{grid-template-columns:1fr 1fr;gap:14px;padding-top:18px;display:grid}.form-hint{color:#606266;background:#f4f4f5;border-radius:3px;grid-column:1/-1;margin:0;padding:9px 10px;font-size:12px;line-height:1.6}.dialog-actions{grid-column:1/-1;justify-content:flex-end;gap:8px;padding-top:6px;display:flex}code{color:#606266;font-size:12px}@media (width<=1080px){.metric-grid{grid-template-columns:repeat(3,1fr)}}@media (width<=760px){.shell{grid-template-columns:1fr}.sidebar{display:none}.topbar{height:58px;padding:0 16px}.content{padding:14px 16px 32px}.metric-grid{grid-template-columns:repeat(2,1fr)}.section-head{flex-direction:column;align-items:flex-start;padding:12px}.notice{margin:12px 16px -2px}.form-grid{grid-template-columns:1fr}.catalog-row{grid-template-columns:1fr;gap:5px}.session-label{display:none}.inline-filter,.inline-filter input{width:100%}.table-toolbar{flex-direction:column;align-items:stretch}.table-tool-actions{justify-content:flex-end}}@media (width<=420px){.metric-grid{grid-template-columns:1fr}}
