/* =========================================================
   CPC PROCESS FINAL OVERRIDE
   Uses existing DKI protocol markup, CPC colours.
   Load this LAST.
   ========================================================= */

.cpc-process-page,
.process-workspace-modal,
.cpc-process-modal-root {
  --dki-black: #003849;
  --dki-red: #a7c900;
  --dki-grey-light: #f6f7f8;
  --dki-grey: #6b7280;
  --dki-white: #ffffff;
  --dki-border: rgba(0, 56, 73, 0.14);
  --dki-shadow: 0 8px 24px rgba(0, 56, 73, 0.10);
  --dki-font-heading: "Roboto Condensed", "Roboto", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.cpc-process-page .dki-protocol-card-grid {
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(290px, 1fr)) !important;
  gap: 16px !important;
}

.cpc-process-page .dki-protocol-card {
  background: #ffffff !important;
  border: 1px solid rgba(0, 56, 73, 0.14) !important;
  border-radius: 16px !important;
  box-shadow: none !important;
}

.cpc-process-page .dki-protocol-card:hover {
  border-color: #a7c900 !important;
  box-shadow: 0 8px 24px rgba(0, 56, 73, 0.10) !important;
  transform: translateY(-1px);
}

.cpc-process-page .dki-protocol-card-inner {
  padding: 18px !important;
}

.cpc-process-page .dki-protocol-card-badge {
  background: rgba(167, 201, 0, 0.14) !important;
  color: #003849 !important;
}

.cpc-process-page .dki-protocol-card-title {
  color: #003849 !important;
}

.cpc-process-page .dki-btn-outline {
  background: #ffffff !important;
  border-color: rgba(0, 56, 73, 0.28) !important;
  color: #003849 !important;
  border-radius: 999px !important;
}

.cpc-process-page .dki-btn-outline:hover {
  background: #003849 !important;
  border-color: #003849 !important;
  color: #ffffff !important;
}

/* Modal KPIs */

.cpc-process-modal-root .dki-protocol-kpi-strip {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
  margin-bottom: 14px !important;
}

.cpc-process-modal-root .dki-protocol-kpi-box {
  min-width: 170px !important;
  padding: 12px 14px !important;
  border-radius: 12px !important;
  background: #f6f7f8 !important;
  border: 1px solid rgba(0, 56, 73, 0.14) !important;
}

.cpc-process-modal-root .dki-protocol-kpi-label {
  font-size: 0.74rem !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  color: #6b7280 !important;
  margin-bottom: 4px !important;
  font-weight: 800 !important;
}

.cpc-process-modal-root .dki-protocol-kpi-value {
  font-size: 1rem !important;
  font-weight: 800 !important;
  color: #003849 !important;
}

/* =========================================================
   CPC PROCESS TASKS TABLE — FIT MODAL
   ========================================================= */

.cpc-process-modal-root .dataTables_wrapper,
.cpc-process-modal-root .dataTables_scroll,
.cpc-process-modal-root .dataTables_scrollHead,
.cpc-process-modal-root .dataTables_scrollBody {
  width: 100% !important;
  max-width: 100% !important;
  overflow-x: hidden !important;
}

.cpc-process-modal-root table.cpc-process-tasks-dt,
.cpc-process-modal-root table.dataTable.cpc-process-tasks-dt {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  table-layout: fixed !important;
  border-collapse: collapse !important;
}

.cpc-process-modal-root table.cpc-process-tasks-dt thead th,
.cpc-process-modal-root table.cpc-process-tasks-dt tbody td {
  white-space: normal !important;
  overflow-wrap: break-word !important;
  word-break: normal !important;
  vertical-align: middle !important;
}

/* Task column: readable wrapping without blowing up the table */
.cpc-process-modal-root table.cpc-process-tasks-dt th.dt-task,
.cpc-process-modal-root table.cpc-process-tasks-dt td.dt-task {
  width: 36% !important;
  min-width: 260px !important;
  max-width: 460px !important;

  white-space: normal !important;
  overflow-wrap: break-word !important;
  word-break: normal !important;

  line-height: 1.28 !important;
  font-weight: 800 !important;
}

/* Keep task text from becoming vertically huge */
.cpc-process-modal-root table.cpc-process-tasks-dt td.dt-task {
  padding-top: 10px !important;
  padding-bottom: 10px !important;
}

/* Give owner a bit less room so task can breathe */
.cpc-process-modal-root table.cpc-process-tasks-dt th.dt-owner,
.cpc-process-modal-root table.cpc-process-tasks-dt td.dt-owner {
  width: 22% !important;
  max-width: 280px !important;

  white-space: normal !important;
  overflow-wrap: break-word !important;
  word-break: normal !important;
}

/* Compact the date/status columns slightly */
.cpc-process-modal-root table.cpc-process-tasks-dt th.dt-status,
.cpc-process-modal-root table.cpc-process-tasks-dt td.dt-status {
  width: 10% !important;
  white-space: nowrap !important;
}

.cpc-process-modal-root table.cpc-process-tasks-dt th.dt-date,
.cpc-process-modal-root table.cpc-process-tasks-dt td.dt-date {
  width: 13% !important;
  font-size: 0.74rem !important;
  white-space: normal !important;
  overflow-wrap: break-word !important;
}

/* =========================================================
   CPC PROCESS TASK TABLE — isolated from DKI DT overrides
   ========================================================= */

.cpc-process-task-table-wrap {
  width: 100% !important;
  max-width: 100% !important;
  overflow-x: hidden !important;
}

/* Kill DT scroll wrappers only inside this process table area */
.cpc-process-task-table-wrap .dataTables_wrapper,
.cpc-process-task-table-wrap .dataTables_scroll,
.cpc-process-task-table-wrap .dataTables_scrollHead,
.cpc-process-task-table-wrap .dataTables_scrollBody,
.cpc-process-task-table-wrap .dataTables_scrollHeadInner {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  overflow-x: hidden !important;
}

/* Force the actual table to fit */
.cpc-process-task-table-wrap table.cpc-process-tasks-dt,
.cpc-process-task-table-wrap table.dataTable.cpc-process-tasks-dt {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  table-layout: fixed !important;
  border-collapse: collapse !important;
}

/* All cells wrap by default */
.cpc-process-task-table-wrap table.cpc-process-tasks-dt th,
.cpc-process-task-table-wrap table.cpc-process-tasks-dt td {
  white-space: normal !important;
  overflow-wrap: break-word !important;
  word-break: normal !important;
  vertical-align: middle !important;
}

/* Column widths */
.cpc-process-task-table-wrap table.cpc-process-tasks-dt th.dt-task,
.cpc-process-task-table-wrap table.cpc-process-tasks-dt td.dt-task {
  width: 38% !important;
  line-height: 1.28 !important;
  font-weight: 800 !important;
}

.cpc-process-task-table-wrap table.cpc-process-tasks-dt th.dt-workflow,
.cpc-process-task-table-wrap table.cpc-process-tasks-dt td.dt-workflow {
  width: 11% !important;
}

.cpc-process-task-table-wrap table.cpc-process-tasks-dt th.dt-owner,
.cpc-process-task-table-wrap table.cpc-process-tasks-dt td.dt-owner {
  width: 22% !important;
}

.cpc-process-task-table-wrap table.cpc-process-tasks-dt th.dt-status,
.cpc-process-task-table-wrap table.cpc-process-tasks-dt td.dt-status {
  width: 10% !important;
  text-align: center !important;
}

.cpc-process-task-table-wrap table.cpc-process-tasks-dt th.dt-date,
.cpc-process-task-table-wrap table.cpc-process-tasks-dt td.dt-date {
  width: 13% !important;
  font-size: 0.74rem !important;
}

.cpc-process-task-table-wrap table.cpc-process-tasks-dt th.dt-actions,
.cpc-process-task-table-wrap table.cpc-process-tasks-dt td.dt-actions {
  width: 6% !important;
  min-width: 56px !important;
  max-width: 68px !important;
  text-align: center !important;
  white-space: nowrap !important;
}

/* Compact edit button */
.cpc-process-task-table-wrap .task-edit-btn,
.cpc-process-task-table-wrap .cpc-process-task-edit-btn {
  min-width: 48px !important;
  padding: 0.24rem 0.45rem !important;
  border-radius: 9px !important;
  font-size: 0.74rem !important;
  font-weight: 800 !important;
  background: #003849 !important;
  color: #ffffff !important;
  border: 1px solid #003849 !important;
}