
#tknp-assessment-registration-matrix-v1{margin:18px 0}
.tknp-regv2-card{background:#fff;border:1px solid #cbd9e7;border-radius:16px;padding:18px;box-shadow:0 8px 28px rgba(12,56,91,.06)}
.tknp-regv2-heading{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:16px}
.tknp-regv2-heading h2{margin:2px 0 4px;color:#0b466f}
.tknp-regv2-heading p{margin:0;color:#5f7183}
.tknp-regv2-heading .eyebrow{font-size:12px;font-weight:800;letter-spacing:.08em;color:#1679bd}
.tknp-regv2-badge{background:#e8f6ef;color:#08784f;border:1px solid #b8e6d2;padding:7px 11px;border-radius:999px;font-weight:700;white-space:nowrap}
.tknp-regv2-filters{display:grid;grid-template-columns:repeat(5,minmax(145px,1fr)) auto;gap:10px;align-items:end;margin-bottom:14px}
.tknp-regv2-filters label,.tknp-regv2-submit label{display:flex;flex-direction:column;gap:5px;font-weight:700;color:#263d53}
.tknp-regv2-filters select,.tknp-regv2-toolbar input,.tknp-regv2-submit textarea{width:100%;border:1px solid #bdcddd;border-radius:9px;padding:10px;background:#fff;color:#12283c;box-sizing:border-box}
.tknp-regv2-modebar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:12px;background:#f4f8fb;border-radius:11px;margin-bottom:12px}
.tknp-regv2-modebar>span{font-weight:800;margin-right:4px}
.tknp-regv2-modebar button,.tknp-regv2-toolbar button,.tknp-regv2-filters button,.tknp-regv2-submit button{border:1px solid #9fb9cf;background:#fff;color:#0b4c77;border-radius:9px;padding:10px 13px;font-weight:750;cursor:pointer}
.tknp-regv2-modebar button.active{background:#0d78a0;color:#fff;border-color:#0d78a0}
.tknp-regv2-modebar button.danger-outline.active{background:#8b2d2d;border-color:#8b2d2d}
.tknp-regv2-card button.primary{background:#0d78a0;border-color:#0d78a0;color:#fff}
.tknp-regv2-card button.danger{background:#a72d2d;border-color:#a72d2d;color:#fff}
.tknp-regv2-card button:disabled{opacity:.45;cursor:not-allowed}
.tknp-regv2-toolbar{display:flex;gap:9px;align-items:center;flex-wrap:wrap;margin-bottom:12px}
.tknp-regv2-toolbar input{min-width:280px;flex:1}
.tknp-regv2-toolbar [data-count]{margin-left:auto;font-weight:700;color:#425b70}
.tknp-regv2-table-wrap{overflow:auto;border:1px solid #cedbe7;border-radius:12px;max-height:55vh}
.tknp-regv2-matrix{width:100%;border-collapse:separate;border-spacing:0;min-width:900px;background:#fff}
.tknp-regv2-matrix th{position:sticky;top:0;z-index:3;background:#eaf3f8;color:#153f5c;padding:9px;border-bottom:1px solid #c8d7e3;text-align:left}
.tknp-regv2-matrix td{padding:9px;border-bottom:1px solid #e2e9ef;vertical-align:middle}
.tknp-regv2-matrix .trainee-head,.tknp-regv2-matrix .trainee-cell{position:sticky;left:0;z-index:2;background:#fff;min-width:230px}
.tknp-regv2-matrix .trainee-head{z-index:4;background:#eaf3f8}
.tknp-regv2-matrix .unit-head{min-width:165px}
.tknp-regv2-matrix .unit-head label,.tknp-regv2-matrix .trainee-select{display:flex;gap:7px;align-items:flex-start}
.tknp-regv2-matrix .unit-head strong,.tknp-regv2-matrix .unit-head small,.tknp-regv2-matrix .trainee-select strong,.tknp-regv2-matrix .trainee-select small{display:block}
.tknp-regv2-matrix .unit-head small,.tknp-regv2-matrix .trainee-select small{color:#60778a;font-weight:500;margin-top:2px}
.tknp-regv2-matrix .unit-cell{text-align:center;min-width:145px}
.tknp-regv2-matrix .unit-cell label{display:flex;justify-content:center;align-items:center;gap:5px}
.tknp-regv2-matrix .unit-cell span{font-size:12px;color:#677b8c}
.tknp-regv2-matrix .unit-cell.booked{background:#eef9f4}
.tknp-regv2-matrix .status-cell{min-width:210px}
.tknp-regv2-matrix .status-cell strong,.tknp-regv2-matrix .status-cell small{display:block}
.tknp-regv2-matrix .status-cell small{color:#6c7f8e;margin-top:3px}
.tknp-regv2-matrix .manual-note{color:#8a5a00!important;margin-top:5px!important}
.tknp-regv2-submit{display:flex;gap:12px;align-items:end;margin-top:14px}
.tknp-regv2-submit .grow{flex:1}
.tknp-regv2-help{color:#607487;font-size:13px;margin:10px 0 0}
.tknp-regv2-empty{padding:24px;border:1px dashed #b9cbd9;border-radius:10px;text-align:center;color:#617687}
.tknp-regv2-message{padding:10px 12px;border-radius:9px;margin:0 0 12px}
.tknp-regv2-message.success{background:#e9f8f0;border:1px solid #b6e7ce;color:#087649}
.tknp-regv2-message.error{background:#fff0f0;border:1px solid #efc0c0;color:#a02222}
.tknp-regv2-busy{padding:10px 12px;background:#eef5ff;color:#174d84;border-radius:9px;margin-bottom:12px;font-weight:700}
@media(max-width:1100px){.tknp-regv2-filters{grid-template-columns:repeat(2,minmax(180px,1fr))}}
@media(max-width:700px){.tknp-regv2-card{padding:12px;border-radius:10px}.tknp-regv2-heading{flex-direction:column}.tknp-regv2-filters{grid-template-columns:1fr}.tknp-regv2-toolbar input{min-width:100%}.tknp-regv2-submit{flex-direction:column;align-items:stretch}}


/* TKNP Assessment Registration V1-R3 - organised Step 1 */
#tknp-assessment-registration-matrix-v1{margin:14px 0 18px}
.tknp-regv3-card{background:#fff;border:1px solid #c9dbea;border-radius:15px;padding:16px;box-shadow:0 5px 18px rgba(11,70,111,.05)}
.tknp-regv3-stephead{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;padding:2px 2px 14px;border-bottom:1px solid #e1eaf1;margin-bottom:14px}
.tknp-regv3-stephead h2{margin:3px 0 4px;color:#0b466f;font-size:26px}
.tknp-regv3-stephead p{margin:0;color:#627487;max-width:760px}
.tknp-regv3-eyebrow{font-size:12px;font-weight:850;letter-spacing:.09em;color:#1979b5}
.tknp-regv3-summary{display:grid;grid-template-columns:auto auto;gap:2px 7px;min-width:180px;padding:9px 12px;border-radius:11px;background:#eef7f4;color:#23614e}
.tknp-regv3-summary strong{font-size:18px;text-align:right}
.tknp-regv3-summary span{font-size:12px;align-self:center}
.tknp-regv3-section{padding:13px 0;border-bottom:1px solid #edf2f6}
.tknp-regv3-section:last-child{border-bottom:0;padding-bottom:0}
.tknp-regv3-section-title{display:flex;align-items:flex-start;gap:9px;margin-bottom:10px}
.tknp-regv3-section-title>span{display:inline-flex;align-items:center;justify-content:center;width:27px;height:27px;border-radius:50%;background:#0d78a0;color:#fff;font-weight:850;flex:0 0 auto}
.tknp-regv3-section-title strong,.tknp-regv3-section-title small{display:block}
.tknp-regv3-section-title strong{color:#173f5c;font-size:16px}
.tknp-regv3-section-title small{color:#6a7c8b;margin-top:2px}
.tknp-regv3-filters{display:grid;grid-template-columns:1.05fr 1.05fr 1.25fr 1fr 1.15fr auto;gap:9px;align-items:end}
.tknp-regv3-filters label{display:flex;flex-direction:column;gap:5px;font-weight:700;color:#263d53}
.tknp-regv3-filters select{width:100%;min-height:43px;border:1px solid #bdcddd;border-radius:9px;padding:8px 10px;background:#fff;color:#12283c;box-sizing:border-box}
.tknp-regv3-load{min-height:43px;white-space:nowrap}
.tknp-regv3-zero-note{margin-top:9px;padding:9px 11px;border:1px solid #e7d39e;border-radius:9px;background:#fff8e8;color:#775813;font-size:13px}
.tknp-regv3-modebar{padding:0;background:transparent;margin:0}
.tknp-regv3-modebar button{min-width:145px}
.tknp-regv3-work{padding-top:14px}
.assessment-booking-page .assessment-workflow-tabs{margin-bottom:12px!important;gap:8px!important}
.assessment-booking-page .assessment-workflow-tabs button{min-height:54px!important}
@media(max-width:1200px){.tknp-regv3-filters{grid-template-columns:repeat(3,minmax(180px,1fr))}.tknp-regv3-load{width:100%}}
@media(max-width:760px){
  .tknp-regv3-card{padding:12px}
  .tknp-regv3-stephead{flex-direction:column}
  .tknp-regv3-summary{width:100%;box-sizing:border-box}
  .tknp-regv3-filters{grid-template-columns:1fr}
  .tknp-regv3-modebar button{width:100%;min-width:0}
}


/* TKNP Assessment Registration V1-R5 — registration + result intelligence */
.tknp-unit-choice{display:flex!important;align-items:flex-start!important;justify-content:flex-start!important;gap:7px!important;text-align:left}
.tknp-unit-choice>input{margin-top:4px;flex:0 0 auto}
.tknp-cell-state{display:flex;flex-direction:column;align-items:flex-start;gap:4px;min-width:118px}
.tknp-cell-badge{display:inline-flex;align-items:center;width:max-content;max-width:145px;padding:3px 7px;border-radius:999px;font-size:11px;font-weight:800;line-height:1.25;white-space:normal}
.tknp-cell-badge.registered{background:#e6f2fb;color:#075985;border:1px solid #b7d7ec}
.tknp-cell-badge.competent{background:#e5f7ee;color:#087149;border:1px solid #b6e5cd}
.tknp-cell-badge.nyc{background:#fff0f0;color:#a12626;border:1px solid #efc1c1}
.tknp-cell-badge.pending{background:#fff7df;color:#815d05;border:1px solid #ead79c}
.tknp-cell-badge.returned{background:#fceee6;color:#9a481d;border:1px solid #edc7b1}
.tknp-cell-badge.awaiting{background:#f1f5f9;color:#52687a;border:1px solid #d6e0e8}
.tknp-cell-badge.neutral{background:#f4f5f6;color:#6b7280;border:1px solid #dfe3e7}
.tknp-cell-action{display:block;color:#a12626;font-weight:750;line-height:1.25}
.tknp-cell-meta{display:block;color:#677b8c;line-height:1.25}
.tknp-status-chips{display:flex;flex-wrap:wrap;gap:4px;margin:5px 0}
.tknp-status-chips span{display:inline-block;padding:3px 6px;border-radius:7px;background:#eef4f8;color:#35546a;font-size:11px;font-weight:700}
.tknp-regv2-matrix .unit-cell.outcome-competent{background:#f2fbf6}
.tknp-regv2-matrix .unit-cell.outcome-nyc{background:#fff7f7}
.tknp-regv2-matrix .unit-cell.outcome-pending,.tknp-regv2-matrix .unit-cell.outcome-returned{background:#fffaf0}
.tknp-regv2-matrix .status-cell{min-width:235px}
@media(max-width:760px){
  .tknp-cell-badge{max-width:125px}
  .tknp-regv2-matrix .status-cell{min-width:200px}
}
