.matrix-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:16px 0}
.matrix-toolbar .search{width:250px}.matrix-toolbar>input{width:210px;font-size:12px}.matrix-toolbar select{font-size:12px}.matrix-toolbar>span{font-size:12px;color:#69776f;margin-left:auto}
.matrix-legend{display:flex;align-items:center;gap:20px;flex-wrap:wrap;font-size:12px;margin:14px 0}
.matrix-legend>span{display:flex;align-items:center;gap:6px}.matrix-legend .excluded{color:#8b9290}.matrix-legend .done{color:#248453}
.matrix-blank{display:inline-block;width:18px;height:18px;border:1px solid #d85858;background:#f49b9b}
#matrix-save-state{margin-left:auto;color:#69776f;min-height:18px}
.matrix-scroll{overflow-x:auto;border:1px solid #dce4df;background:white}
.work-page.matrix-page{display:block;height:auto;min-height:calc(100dvh - 124px);overflow:visible}.matrix-page>.matrix-scroll{max-height:none}
#matrix-table{border-collapse:separate;border-spacing:0;table-layout:fixed;width:min(100%,calc(168px + var(--matrix-columns,25)*36.4px));font-size:12px}
.matrix-stop-col{width:126px}.matrix-progress-col{width:42px}.matrix-work-col{width:auto}
#matrix-table th,#matrix-table td{border-right:1px solid #e2e8e4;border-bottom:1px solid #e2e8e4;padding:0;min-width:0}
#matrix-table thead th{position:sticky;top:0;z-index:3;height:194px;max-width:52px;padding:4px 2px;background:#edf3f0;color:#345044;font-size:11px;line-height:1.35;vertical-align:bottom;overflow-wrap:anywhere;text-align:left}
#matrix-table thead th>span{display:block;writing-mode:vertical-rl;transform:rotate(180deg);height:158px;width:100%;padding:0 3px;overflow-wrap:normal}#matrix-table thead select{display:block;width:100%;height:28px;min-height:0;padding:2px 0;font-size:9px;margin-top:4px;font-weight:400;background:#fff;appearance:none;text-align:center;cursor:pointer}
#matrix-table .matrix-stop{position:sticky;left:0;z-index:2;background:#fff;width:126px;max-width:126px;text-align:left}
#matrix-table .matrix-ready{position:sticky;left:126px;z-index:2;background:#f8faf9;text-align:center;width:42px;max-width:42px;font-size:10px}
#matrix-table thead .matrix-stop,#matrix-table thead .matrix-ready{z-index:4;background:#edf3f0}
#matrix-table tbody th a{display:block;padding:3px 6px;color:#254c3a;line-height:1.25;overflow:hidden}#matrix-table tbody th a b,#matrix-table tbody th a small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#matrix-table small{display:block;font-size:9px;font-weight:400;color:#76847b;line-height:1.25;margin-top:1px}
.matrix-cell{width:100%;height:36px;min-height:0;padding:0;display:flex;align-items:center;justify-content:center;border-radius:0;background:#fff;transition:background .12s}
.matrix-cell.pending{background:#f49b9b}.matrix-cell.pending:hover{background:#ed8585}.matrix-cell.excluded{color:#969e99;background:#f6f7f6}.matrix-cell.done{color:#218252;background:#eff9f2}
#matrix-table td:has(.pending){background:#f49b9b}#matrix-table td:has(.excluded){background:#f6f7f6}#matrix-table td:has(.done){background:#eff9f2}
.page-nav{overflow-x:auto}.page-nav a{flex-shrink:0;white-space:nowrap}
.matrix-cell:hover{box-shadow:inset 0 0 0 2px #91a79a}.matrix-cell:focus-visible{outline:2px solid #376e53;outline-offset:-3px}.matrix-cell:disabled{cursor:wait;opacity:.7}
.matrix-cell svg{width:16px;height:16px;stroke-width:2.5}
.matrix-percent{font-weight:700;font-variant-numeric:tabular-nums}.matrix-percent.low{color:#b83737}.matrix-percent.orange{color:#b06516}.matrix-percent.medium{color:#957b0b}.matrix-percent.lime{color:#6e8928}.matrix-percent.high{color:#218252}.matrix-percent.unknown{color:#76847b}
@media(max-width:700px){.matrix-toolbar{gap:7px;margin:10px 0}.matrix-toolbar .search,.matrix-toolbar>input{width:calc(50% - 4px)}.matrix-toolbar>span{font-size:10px}.matrix-legend{gap:10px;font-size:10px}.matrix-scroll{max-height:calc(100dvh - 285px)}.matrix-stop-col{width:120px}.matrix-progress-col{width:50px}.matrix-work-col{width:44px}#matrix-table .matrix-stop{width:120px;max-width:120px}#matrix-table .matrix-ready{left:120px;width:50px;max-width:50px}#matrix-table thead .matrix-ready{font-size:10px}#matrix-table tbody th a{font-size:10px}}
@media(max-width:700px){#matrix-table{width:calc(170px + var(--matrix-columns,25)*30.8px)}.matrix-work-col{width:30.8px}.matrix-page>.matrix-scroll{max-height:none}}
