.rubric-matrix-wrap{margin-top:18px;border:1px solid var(--line-strong);border-radius:12px;background:#fff;scrollbar-color:#87b9a8 #edf5f2}
.rubric-matrix-wrap:focus-visible{outline:3px solid var(--green);outline-offset:3px}
.rubric-matrix{width:100%;min-width:1060px;table-layout:fixed;border-collapse:collapse;font-size:.8rem;line-height:1.5}
.rubric-matrix caption{padding:11px 14px;background:#f4f8f6;color:var(--muted);font-size:.76rem;font-weight:750;text-align:left;caption-side:top}
.rubric-matrix .matrix-criterion-col{width:30%}
.rubric-matrix .matrix-level-col{width:17.5%}
.rubric-matrix-summative .matrix-criterion-col{width:24%}
.rubric-matrix-summative .matrix-weight-col{width:6%}
.rubric-matrix th,.rubric-matrix td{border:1px solid var(--line);padding:14px 13px;vertical-align:top;white-space:normal;overflow-wrap:break-word}
.rubric-matrix thead th{background:var(--navy);color:#fff;font-size:.79rem;line-height:1.35;letter-spacing:0;text-transform:none}
.rubric-matrix thead th.matrix-level-heading{border-top:5px solid var(--matrix-accent);background:var(--matrix-surface);color:var(--ink)}
.matrix-level-heading.level-4,.matrix-descriptor.level-4{--matrix-accent:#087e5c;--matrix-surface:#edf8f2}
.matrix-level-heading.level-3,.matrix-descriptor.level-3{--matrix-accent:#276f99;--matrix-surface:#eef6fa}
.matrix-level-heading.level-2,.matrix-descriptor.level-2{--matrix-accent:#b57a00;--matrix-surface:#fff9ed}
.matrix-level-heading.level-1,.matrix-descriptor.level-1{--matrix-accent:#c64553;--matrix-surface:#fff4f5}
.matrix-level-number{display:block;margin-bottom:5px;color:var(--matrix-accent);font-size:.68rem;font-weight:950}
.rubric-matrix tbody th.matrix-criterion{background:#f8fbfa;color:var(--ink);font-size:.83rem;line-height:1.45;letter-spacing:0;text-transform:none}
.matrix-criterion-number{display:inline-flex;align-items:center;justify-content:center;min-width:25px;margin:0 8px 5px 0;border-radius:6px;padding:3px 5px;background:#e2eee9;color:var(--green);font-size:.65rem;font-weight:950}
.matrix-criterion>strong{font-size:.85rem}
.matrix-criterion p{margin:6px 0 0;color:var(--muted);font-size:.77rem;line-height:1.5;font-weight:500}
.rubric-matrix .matrix-weight-heading,.rubric-matrix .matrix-weight{text-align:center}
.rubric-matrix td.matrix-weight{background:#fff8e5;color:#7c5700;font-size:.87rem;font-weight:900;vertical-align:middle}
.rubric-matrix td.matrix-descriptor{background:var(--matrix-surface);color:var(--ink-soft)}
.rubric-matrix tfoot th,.rubric-matrix tfoot td{background:#eef5f2;color:var(--ink);font-size:.78rem;letter-spacing:0;text-transform:none}
.rubric-table-hint{display:none;margin:10px 0 0;color:var(--muted);font-size:.76rem}
@media(max-width:1180px){.rubric-table-hint{display:block}}
@media(max-width:660px){.rubric-matrix{min-width:1030px}.rubric-matrix th,.rubric-matrix td{padding:12px}.rubric-matrix caption{padding:10px 12px}}
@media print{
  body.rubric-print-mode .rubric-table-hint{display:none!important}
  body.rubric-print-mode .rubric-matrix-wrap{overflow:visible;border-radius:0;margin-top:9px}
  body.rubric-print-mode .rubric-matrix{min-width:0;width:100%;font-size:8pt;line-height:1.3}
  body.rubric-print-mode .rubric-matrix th,body.rubric-print-mode .rubric-matrix td{padding:7px 8px;print-color-adjust:exact;-webkit-print-color-adjust:exact}
  body.rubric-print-mode .rubric-matrix caption{padding:6px 8px;font-size:8pt}
  body.rubric-print-mode .rubric-matrix thead{display:table-header-group}
  body.rubric-print-mode .rubric-matrix tfoot{display:table-row-group}
  body.rubric-print-mode .rubric-matrix tr{break-inside:avoid}
  body.rubric-print-mode .rubric-matrix thead th,body.rubric-print-mode .rubric-matrix tbody th.matrix-criterion{font-size:8pt;line-height:1.3}
  body.rubric-print-mode .matrix-criterion>strong{font-size:8pt}
  body.rubric-print-mode .matrix-criterion p{font-size:7.5pt;line-height:1.3}
  body.rubric-print-mode .matrix-criterion-number{font-size:7pt}
  body.rubric-print-mode .matrix-level-number{font-size:7pt}
  body.rubric-print-mode .rubric-matrix td.matrix-weight{font-size:8pt}
}

.rubric-config{display:flex;align-items:flex-end;justify-content:space-between;flex-wrap:wrap;gap:14px;border-bottom:1px solid var(--line);padding:15px 20px;background:#f8fbfa}
.rubric-lot-select{display:grid;gap:6px;min-width:270px;color:var(--muted);font-size:.74rem;font-weight:850}
.rubric-lot-select select{min-height:42px;border:1px solid var(--line-strong);border-radius:9px;padding:8px 11px;background:#fff;color:var(--ink);font-size:.8rem}
.rubric-edit-actions{display:flex;flex-wrap:wrap;gap:8px}
.rubric-subcriteria-note,.rubric-custom-status{margin:0;padding:10px 20px;color:var(--muted);font-size:.77rem;line-height:1.5}
.rubric-subcriteria-note{border-bottom:1px solid var(--line);background:#f4f8f6}
.rubric-custom-status{padding-top:8px;padding-bottom:0}
.rubric-custom-warning{margin-top:10px;border:1px solid #f0c768;background:#fff8e5;color:#805b08}
.rubric-selected-lot{margin:10px 0 0;color:#bdf0dc;font-size:.83rem;font-weight:800}
.rubric-scope-note{margin:12px 0 0;color:var(--muted);font-size:.79rem;line-height:1.55}
.matrix-subcriteria-label{display:block;margin-top:12px;color:var(--green);font-size:.72rem;font-weight:900}
.matrix-subcriteria{margin:6px 0 0;padding-left:17px;font-size:.77rem;line-height:1.5;font-weight:500;color:var(--ink-soft)}
.matrix-subcriteria li+li{margin-top:5px}
.rubric-matrix .matrix-criterion p.matrix-lot-note{margin-top:10px;border-left:2px solid #81b69e;padding-left:8px;color:#245845;font-size:.74rem}
.matrix-edit-button{margin-top:12px;border:1px solid #bed6cb;border-radius:7px;padding:5px 9px;background:#fff;color:var(--green);font-size:.72rem;font-weight:800;cursor:pointer}
.matrix-edit-button:hover{background:#eaf5ee}
.rubric-editor{width:min(800px,calc(100% - 32px));max-height:calc(100vh - 44px);overflow:auto;border:1px solid var(--line);border-radius:17px;padding:24px;color:var(--ink);background:#fff;box-shadow:0 22px 80px rgba(5,28,43,.28)}
.rubric-editor::backdrop{background:rgba(6,29,45,.58)}
.rubric-editor h2{margin:0;font:700 1.6rem/1.2 Georgia,serif}
.rubric-editor-scope{margin:8px 0 20px;color:var(--muted);font-size:.84rem}
.rubric-editor-field{display:grid;gap:7px;margin:13px 0;color:var(--ink-soft);font-size:.82rem;font-weight:800}
.rubric-editor-field input,.rubric-editor-field textarea{width:100%;border:1px solid var(--line-strong);border-radius:9px;padding:10px 12px;background:#fbfdfc;color:var(--ink);font:500 .83rem/1.5 Arial,sans-serif;resize:vertical}
.rubric-editor-field input:focus,.rubric-editor-field textarea:focus{outline:2px solid var(--green);outline-offset:1px}
.rubric-editor-levels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 15px}
.rubric-editor-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:18px;border-top:1px solid var(--line);padding-top:16px}
@media(max-width:660px){.rubric-config{padding:13px}.rubric-lot-select{width:100%;min-width:0}.rubric-edit-actions{width:100%}.rubric-edit-actions .button{flex:1 1 100%}.rubric-subcriteria-note,.rubric-custom-status{padding-inline:13px}.rubric-editor{padding:18px}.rubric-editor-levels{grid-template-columns:1fr}}
@media print{
  body.rubric-print-mode .rubric-config,body.rubric-print-mode .rubric-custom-status,body.rubric-print-mode .rubric-subcriteria-note,body.rubric-print-mode .matrix-edit-button{display:none!important}
  body.rubric-print-mode .rubric-scope-note{font-size:8.5pt;line-height:1.35;margin-top:7px}
  body.rubric-print-mode .rubric-matrix{font-size:9pt;line-height:1.35}
  body.rubric-print-mode .rubric-matrix thead th,body.rubric-print-mode .rubric-matrix tbody th.matrix-criterion,body.rubric-print-mode .matrix-criterion>strong{font-size:9pt}
  body.rubric-print-mode .matrix-criterion p{font-size:8.5pt;line-height:1.35}
  body.rubric-print-mode .matrix-subcriteria-label{font-size:8pt;margin-top:6px}
  body.rubric-print-mode .matrix-subcriteria{font-size:8.5pt;line-height:1.35}
  body.rubric-print-mode .matrix-subcriteria li+li{margin-top:3px}
  body.rubric-print-mode .rubric-matrix .matrix-criterion p.matrix-lot-note{font-size:8.5pt;line-height:1.35;margin-top:5px}
}
