/* 总看板关键产品独立布局，不覆盖产品部/采购克隆矩阵。 */
#matrix.kpm-main .matrixlayout{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:start;gap:18px}
#matrix.kpm-main .matrixplot,#matrix.kpm-main .matrixlist{padding:18px;min-width:0}
.kpm-main .kpm-chart-head,.kpm-main .kpm-list-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}
.kpm-main .kpm-chart-head h3,.kpm-main .kpm-list-head h3{margin:0;color:#193f68;font-size:15px}
.kpm-main .kpm-chart-head>span,.kpm-main #kpm-count{font-size:12px;color:#8393ad;white-space:nowrap}
#matrix.kpm-main #matrixchart{position:relative;overflow:auto;min-width:0}
#matrix.kpm-main #matrixchart svg{display:block;width:100%;height:430px;max-height:none}
.kpm-main #matrixchart text{font-size:12px;fill:#7e91ad}
.kpm-main #matrixchart .kpm-axis-title{font-size:13px}
.kpm-main #matrixchart .kpm-zone-label{font-size:13px;font-weight:500}
.kpm-main #matrixchart circle{cursor:pointer;stroke:white;stroke-width:1.5px}
.kpm-main #matrixchart circle:hover,.kpm-main #matrixchart circle:focus-visible{stroke:#2365c3;stroke-width:3px;outline:none}
.kpm-main .kpm-chart-note,.kpm-main .kpm-note{font-size:11px;line-height:1.8;color:#8393ad;margin:10px 0 0}
.kpm-main .kpm-chart-empty{position:absolute;left:15%;right:15%;top:45%;padding:15px;background:#ffffffed;text-align:center;color:#8393ad;border-radius:8px;font-size:13px}
.kpm-main .kpm-tools{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:16px;align-items:center;position:relative;z-index:5}
.kpm-main .kpm-tools label{min-width:0}
.kpm-main .kpm-tools input{width:100%;box-sizing:border-box;height:36px;font-size:12px;min-width:0}
.kpm-main .kpm-tools>.link{justify-self:end;font-size:12px}
.kpm-main .kpm-tools .pf-multi{min-width:0;width:100%}
.kpm-main .kpm-tools summary{width:100%;box-sizing:border-box;min-width:0;height:36px;font-size:12px}
.kpm-main .kpm-tools .pf-multi-value{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.kpm-main .kpm-tools .pf-multi-menu{max-height:270px;overflow-y:auto;min-width:100%;box-sizing:border-box;z-index:15}
#matrix.kpm-main #matrixtabs{gap:6px;flex-wrap:wrap;margin-bottom:12px}
.kpm-main #matrixtabs button{font-size:12px;white-space:nowrap;padding:7px 9px}
.kpm-main #matrixtabs button>span{margin-left:6px;font-size:11px;opacity:.7}
#matrix.kpm-main #matrixtable{overflow:auto;max-height:640px;width:100%;min-width:0;border:1px solid #e4ecfa;border-radius:6px}
.kpm-main #matrixtable table{min-width:1470px;width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed;font-size:12px}
.kpm-main #matrixtable th{position:sticky;top:0;z-index:2;background:#f4f7fc;font-weight:400;white-space:nowrap;padding:12px 10px}
.kpm-main #matrixtable td{padding:13px 10px;height:70px;box-sizing:border-box;vertical-align:middle;white-space:nowrap}
.kpm-main #matrixtable td>small{display:block;margin-top:6px;font-size:11px;color:#8393ad}
.kpm-main #matrixtable th:first-child,.kpm-main #matrixtable td:first-child{position:sticky;left:0;width:230px;min-width:230px;max-width:230px;box-shadow:1px 0 #e4ecfa}
.kpm-main #matrixtable td:first-child{z-index:1;background:white}
.kpm-main #matrixtable th:first-child{z-index:3}
.kpm-main #matrixtable th:last-child,.kpm-main #matrixtable td:last-child{position:sticky;right:0;width:64px;min-width:64px;z-index:2;background:white;box-shadow:-1px 0 #e4ecfa}
.kpm-main #matrixtable th:last-child{background:#f4f7fc;z-index:3}
.kpm-main .kpm-product{display:flex;align-items:center;gap:9px;max-width:210px;white-space:normal}
.kpm-main .kpm-product>.product-thumb{flex-shrink:0}
.kpm-main .kpm-product>div{min-width:0}
.kpm-main .kpm-product b{font-size:12px;line-height:1.6;font-weight:500;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.kpm-main .kpm-product small{display:block;font-size:10px;color:#8393ad;margin-top:5px;overflow-wrap:anywhere}
.kpm-main .kpm-grade{display:inline-flex;align-items:center;gap:6px;border-radius:5px;padding:5px 7px;font-size:11px;background:#f0f3f8;color:#71849b}
.kpm-main .kpm-grade b{font-size:14px}
.kpm-main .kpm-grade.A{background:#eaf7f2;color:#259c7d}.kpm-main .kpm-grade.B{background:#fff5e4;color:#cb8d25}.kpm-main .kpm-grade.C{background:#eef1ff;color:#6c7ecf}.kpm-main .kpm-grade.D{background:#fff0f2;color:#da6b7b}
.kpm-main .kpm-stock-risk{display:inline-block;padding:3px 6px;border-radius:4px;font-size:11px;background:#fff5e4;color:#ce952b;margin:2px}
.kpm-main .kpm-stock-risk.stagnant{background:#fff0f2;color:#df6e7e}
.kpm-main .kpm-normal{color:#29a487;font-size:11px}
.kpm-main .kpm-sort{border:0;background:transparent;color:inherit;font:inherit;cursor:pointer;padding:0;white-space:nowrap}
.kpm-main .kpm-sort>span{font-size:11px;color:#9aadca;margin-left:5px}
.kpm-main .kpm-sort[data-direction]:not([data-direction=""]){color:#1677ff}
.kpm-main .kpm-empty{padding:60px 15px;text-align:center;font-size:13px;color:#8393ad}
#matrix.kpm-main #matrix-product-pager{margin-top:16px;min-width:0}
#matrix.kpm-main #matrix-product-pager .list-pagination{flex-wrap:wrap;gap:10px}
@media(max-width:1200px){#matrix.kpm-main .matrixlayout{grid-template-columns:1fr}#matrix.kpm-main #matrixchart svg{height:460px}}
@media(max-width:600px){#matrix.kpm-main .matrixplot,#matrix.kpm-main .matrixlist{padding:12px}.kpm-main .kpm-tools{grid-template-columns:repeat(2,minmax(0,1fr))}.kpm-main .kpm-search{grid-column:1/-1}#matrix.kpm-main #matrixchart svg{min-width:520px;height:350px}.kpm-main .kpm-list-head{flex-wrap:wrap}#matrix.kpm-main #matrixtable th:first-child,#matrix.kpm-main #matrixtable td:first-child{width:180px;min-width:180px;max-width:180px}.kpm-main .kpm-product{max-width:160px}.kpm-main .kpm-product small{font-size:9px}.kpm-main .kpm-product img{max-width:30px}.kpm-main .kpm-note{font-size:10px}}

.kpm-main .kpm-chart-legend{display:flex;flex-wrap:wrap;gap:10px 18px;justify-content:center;font-size:11px;color:#8393ad;margin:6px 0 12px}
.kpm-main .kpm-chart-legend>span{display:inline-flex;align-items:center;gap:5px}
.kpm-main .kpm-chart-legend i{width:7px;height:7px;border-radius:50%;background:#35ac8e}.kpm-main .kpm-chart-legend .B i{background:#e7ad50}.kpm-main .kpm-chart-legend .C i{background:#7c8eec}.kpm-main .kpm-chart-legend .D i{background:#e98191}

.kpm-main .kpm-stock-heading{display:flex;flex-direction:column;gap:5px;align-items:flex-start}.kpm-main .kpm-stock-heading>button+button{font-size:10px;color:#8393ad}
