.onefsg-compliance-center {
  --cc-ink: #142334;
  --cc-muted: #5b6c7f;
  --cc-line: #ccd7e3;
  --cc-soft: #edf3f8;
  --cc-surface: #ffffff;
  --cc-orange: #f05a00;
  --cc-green: #0b7a53;
  --cc-blue: #175cd3;
  --cc-red: #b42318;
  width: min(1440px, calc(100% - 32px));
  margin: 16px auto 40px;
  color: var(--cc-ink);
  background: #f4f7fa;
  border: 1px solid var(--cc-line);
  border-radius: 6px;
  overflow: hidden;
  box-shadow: 0 14px 34px rgba(0, 0, 0, .22);
  font-family: Inter, "Segoe UI", Arial, sans-serif;
  font-size: 14px;
  line-height: 1.45;
}

.cc-header {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 24px;
  align-items: end;
  padding: 22px 24px 18px;
  background: linear-gradient(120deg, #fff 0%, #f6f9fc 58%, #e8f0f8 100%);
}

.cc-eyebrow {
  margin: 0 0 4px;
  color: #607184;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 1.4px;
  text-transform: uppercase;
}

.cc-header h1,
.cc-panel h2,
.cc-panel h3,
.cc-drawer h2,
.cc-drawer h3 {
  margin: 0;
  color: var(--cc-ink);
}

.cc-header h1 {
  font-size: clamp(25px, 3vw, 34px);
  line-height: 1.1;
}

.cc-title-context {
  display: block;
  margin-top: 5px;
  color: #50647a;
  font-size: 15px;
  font-weight: 700;
}

.cc-header p {
  max-width: 760px;
  margin: 8px 0 0;
  color: var(--cc-muted);
}

.cc-source-status {
  display: flex;
  gap: 10px 18px;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  padding: 10px 24px;
  color: #36516f;
  background: #eaf3ff;
  border-top: 1px solid #c6daf4;
  border-bottom: 1px solid #c6daf4;
  font-size: 12px;
}

.cc-source-status strong {
  color: var(--cc-blue);
}

.cc-source-status span {
  color: #4d657e;
}

.cc-context {
  display: grid;
  grid-template-columns: 190px 190px;
  gap: 10px;
}

.cc-field {
  display: grid;
  gap: 5px;
  min-width: 0;
}

.cc-field-wide {
  grid-column: 1 / -1;
}

.cc-field label,
.cc-field > span {
  color: #3e5269;
  font-size: 12px;
  font-weight: 700;
}

.cc-field input,
.cc-field select,
.cc-field textarea {
  width: 100%;
  min-width: 0;
  min-height: 38px;
  padding: 8px 10px;
  color: var(--cc-ink);
  background: #fff;
  border: 1px solid #bfcddd;
  border-radius: 5px;
  box-sizing: border-box;
  font: inherit;
}

.cc-field textarea {
  min-height: 104px;
  resize: vertical;
}

.cc-tabs {
  display: flex;
  overflow-x: auto;
  background: #d6e0ea;
  border-top: 1px solid var(--cc-line);
  border-bottom: 1px solid var(--cc-line);
}

.cc-tab {
  flex: 0 0 auto;
  min-height: 44px;
  padding: 0 17px;
  color: #42566d;
  background: #f7f9fb;
  border: 0;
  border-right: 1px solid var(--cc-line);
  font: inherit;
  cursor: pointer;
}

.cc-tab.active {
  color: #fff;
  background: var(--cc-orange);
}

.cc-kpis {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  background: #fff;
  border-bottom: 1px solid var(--cc-line);
}

.cc-kpi {
  min-height: 80px;
  padding: 15px 17px;
  border-right: 1px solid var(--cc-line);
  box-sizing: border-box;
}

.cc-kpi:last-child {
  border-right: 0;
}

.cc-kpi strong {
  display: block;
  color: var(--cc-blue);
  font-size: 24px;
  line-height: 1.1;
}

.cc-kpi span {
  display: block;
  margin-top: 6px;
  color: var(--cc-muted);
  font-size: 12px;
  font-weight: 700;
}

.cc-body {
  min-height: 620px;
  padding: 16px;
}

.cc-start-here {
  display: flex;
  gap: 18px;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 14px;
  padding: 16px;
  background: #fff;
  border: 1px solid var(--cc-line);
  border-left: 5px solid var(--cc-orange);
  border-radius: 6px;
}

.cc-start-here h2,
.cc-start-here p {
  margin: 0;
}

.cc-start-here p {
  max-width: 880px;
  margin-top: 5px;
  color: var(--cc-muted);
}

.cc-checklist {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.cc-checklist > div {
  display: grid;
  gap: 4px;
  padding: 12px;
  background: var(--cc-soft);
  border: 1px solid var(--cc-line);
  border-radius: 5px;
}

.cc-checklist span {
  color: var(--cc-muted);
  font-size: 12px;
}

.cc-grid {
  display: grid;
  gap: 14px;
}

.cc-grid-2 {
  grid-template-columns: minmax(0, 2fr) minmax(280px, 1fr);
}

.cc-workspace-grid {
  grid-template-columns: minmax(300px, 2fr) minmax(0, 3fr);
}

.cc-grid-3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.cc-panel {
  min-width: 0;
  padding: 16px;
  background: var(--cc-surface);
  border: 1px solid var(--cc-line);
  border-radius: 6px;
}

.cc-panel-head,
.cc-actions,
.cc-row {
  display: flex;
  gap: 10px;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
}

.cc-panel-head {
  margin-bottom: 12px;
}

.cc-muted {
  color: var(--cc-muted);
}

.cc-toolbar {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) 180px 160px auto;
  gap: 9px;
  margin-bottom: 12px;
}

.cc-toolbar input,
.cc-toolbar select {
  min-height: 38px;
  padding: 8px 10px;
  background: #fff;
  border: 1px solid #bfcddd;
  border-radius: 5px;
  font: inherit;
}

.cc-button {
  min-height: 38px;
  padding: 8px 13px;
  color: var(--cc-ink);
  background: #fff;
  border: 1px solid #bfcddd;
  border-radius: 5px;
  font: inherit;
  font-weight: 700;
  cursor: pointer;
}

.cc-button.primary {
  color: #fff;
  background: var(--cc-orange);
  border-color: var(--cc-orange);
}

.cc-button.approve {
  color: #fff;
  background: var(--cc-green);
  border-color: var(--cc-green);
}

.cc-button.danger {
  color: #fff;
  background: var(--cc-red);
  border-color: var(--cc-red);
}

.cc-button:disabled {
  opacity: .48;
  cursor: not-allowed;
}

.cc-list {
  display: grid;
  gap: 8px;
}

.cc-list-item {
  width: 100%;
  padding: 12px;
  text-align: left;
  color: var(--cc-ink);
  background: #fff;
  border: 1px solid var(--cc-line);
  border-radius: 5px;
  cursor: pointer;
}

.cc-list-item:hover,
.cc-list-item.selected {
  background: #eef5ff;
  border-color: #79a5e8;
}

.cc-list-item strong,
.cc-list-item span {
  display: block;
}

.cc-list-item span {
  margin-top: 3px;
  color: var(--cc-muted);
  font-size: 12px;
}

.cc-badge {
  display: inline-flex;
  width: fit-content;
  align-items: center;
  min-height: 24px;
  padding: 2px 8px;
  color: #40566d;
  background: #edf2f7;
  border: 1px solid #d3dee9;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 800;
}

.cc-badge.green {
  color: #075f42;
  background: #e6f7f0;
  border-color: #a8ddc8;
}

.cc-badge.orange {
  color: #9a3e00;
  background: #fff0e3;
  border-color: #f5c79f;
}

.cc-badge.red {
  color: #912018;
  background: #fff0ee;
  border-color: #f0b7b1;
}

.cc-badge.blue {
  color: #154ca6;
  background: #e9f1ff;
  border-color: #bdd2f5;
}

.cc-progress {
  height: 8px;
  margin-top: 7px;
  overflow: hidden;
  background: #e2e9f0;
  border-radius: 4px;
}

.cc-progress > span {
  display: block;
  height: 100%;
  background: var(--cc-green);
}

.cc-domain {
  padding: 12px 0;
  border-bottom: 1px solid #e1e7ee;
}

.cc-domain:last-child {
  border-bottom: 0;
}

.cc-table-wrap {
  overflow: auto;
  border: 1px solid var(--cc-line);
  border-radius: 5px;
}

.cc-table {
  width: 100%;
  min-width: 720px;
  border-collapse: collapse;
  table-layout: auto !important;
}

.cc-table th,
.cc-table td {
  padding: 10px 11px;
  text-align: left;
  vertical-align: top;
  border-bottom: 1px solid #e1e7ee;
}

.cc-table th {
  color: #50647a;
  background: #eef3f8;
  font-size: 11px;
  letter-spacing: .4px;
  text-transform: uppercase;
}

.cc-empty,
.cc-loading,
.cc-error {
  padding: 28px 18px;
  text-align: center;
  background: #fff;
  border: 1px dashed #b8c7d7;
  border-radius: 6px;
}

.cc-error {
  color: #8d1e16;
  background: #fff3f1;
  border-color: #e6aaa4;
}

.cc-notice {
  margin-bottom: 14px;
  padding: 10px 12px;
  color: #69410f;
  background: #fff7e8;
  border: 1px solid #edcf9e;
  border-left: 4px solid var(--cc-orange);
  border-radius: 5px;
}

.cc-detail-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 16px;
  align-items: start;
  margin-bottom: 16px;
  padding-bottom: 14px;
  border-bottom: 1px solid var(--cc-line);
}

.cc-detail-head h2 {
  margin-top: 5px;
}

.cc-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 11px;
}

.cc-section {
  margin-top: 18px;
  padding-top: 16px;
  border-top: 1px solid var(--cc-line);
}

.cc-checks {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}

.cc-check {
  padding: 10px;
  background: var(--cc-soft);
  border: 1px solid var(--cc-line);
  border-radius: 5px;
}

.cc-drawer-backdrop {
  position: fixed;
  inset: 0;
  z-index: 2500;
  display: grid;
  place-items: center;
  padding: 24px;
  background: rgba(7, 14, 23, .62);
}

.cc-drawer {
  width: min(760px, 100%);
  max-height: calc(100vh - 48px);
  overflow: auto;
  padding: 20px;
  background: #fff;
  border-radius: 6px;
  box-shadow: 0 22px 70px rgba(0, 0, 0, .42);
}

.cc-modal-form {
  display: grid;
  gap: 12px;
  margin-top: 15px;
}

.cc-toast {
  position: fixed;
  right: 22px;
  bottom: 22px;
  z-index: 3000;
  max-width: 420px;
  padding: 11px 14px;
  color: #fff;
  background: #17324f;
  border-radius: 5px;
  box-shadow: 0 12px 30px rgba(0, 0, 0, .3);
}

.cc-definition {
  display: grid;
  grid-template-columns: minmax(135px, .45fr) minmax(0, 1fr);
  gap: 8px 14px;
  margin: 0;
}

.cc-definition dt {
  font-weight: 750;
  color: var(--cc-ink);
}

.cc-definition dd {
  margin: 0;
  color: var(--cc-muted);
  overflow-wrap: anywhere;
}

@media (max-width: 1120px) {
  .cc-kpis {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .cc-kpi {
    border-bottom: 1px solid var(--cc-line);
  }

  .cc-grid-2,
  .cc-grid-3 {
    grid-template-columns: 1fr;
  }

  .cc-checks {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .cc-checklist {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 760px) {
  .onefsg-compliance-center {
    width: 100%;
    margin: 0;
    border-right: 0;
    border-left: 0;
    border-radius: 0;
  }

  .cc-header {
    grid-template-columns: 1fr;
    padding: 18px 14px;
  }

  .cc-context,
  .cc-form-grid,
  .cc-checks,
  .cc-checklist {
    grid-template-columns: 1fr;
  }

  .cc-start-here {
    align-items: stretch;
    flex-direction: column;
  }

  .cc-kpis {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .cc-toolbar {
    grid-template-columns: 1fr;
  }

  .cc-body {
    padding: 10px;
  }

  .cc-detail-head {
    grid-template-columns: 1fr;
  }

  .cc-definition {
    grid-template-columns: 1fr;
  }

  .cc-definition dd {
    margin-bottom: 8px;
  }

  .cc-drawer-backdrop {
    padding: 0;
  }

  .cc-drawer {
    width: 100%;
    max-height: 100vh;
    border-radius: 0;
  }
}


@media (max-width: 680px) {
  .cc-source-status {
    align-items: flex-start;
    padding: 10px 14px;
  }

  .cc-source-status strong,
  .cc-source-status span {
    width: 100%;
  }
}

/* V8.4.17.7.41.16 Readiness program-launch controls */
.cc-program-launch {
  border-top: 4px solid var(--cc-blue);
}

.cc-program-launch .cc-panel-head p {
  max-width: 820px;
  margin: 5px 0 0;
}

.cc-program-metrics {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 9px;
  margin: 14px 0;
}

.cc-program-metrics > div {
  min-width: 0;
  padding: 12px;
  background: #f3f7fb;
  border: 1px solid var(--cc-line);
  border-radius: 5px;
}

.cc-program-metrics strong,
.cc-program-metrics span {
  display: block;
}

.cc-program-metrics strong {
  color: var(--cc-blue);
  font-size: 22px;
  line-height: 1.1;
}

.cc-program-metrics span {
  margin-top: 5px;
  color: var(--cc-muted);
  font-size: 12px;
  font-weight: 700;
}

.cc-bulk-form {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 11px;
  margin-top: 14px;
}

.cc-program-actions {
  display: flex;
  gap: 14px;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-top: 13px;
  padding-top: 13px;
  border-top: 1px solid var(--cc-line);
}

.cc-checkbox {
  display: inline-flex;
  gap: 8px;
  align-items: flex-start;
  max-width: 620px;
  color: #3e5269;
  font-size: 12px;
  font-weight: 700;
}

.cc-checkbox input {
  flex: 0 0 auto;
  margin-top: 2px;
}

.cc-bulk-progress {
  margin: 14px 0;
  padding: 12px;
  color: #36516f;
  background: #eaf3ff;
  border: 1px solid #c6daf4;
  border-radius: 5px;
  font-weight: 700;
}

.cc-program-success {
  margin: 12px 0;
  padding: 12px;
  color: #075f42;
  background: #eaf8f2;
  border: 1px solid #a8ddc8;
  border-left: 4px solid var(--cc-green);
  border-radius: 5px;
}

@media (max-width: 980px) {
  .cc-program-metrics {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .cc-bulk-form {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 680px) {
  .cc-program-metrics,
  .cc-bulk-form {
    grid-template-columns: 1fr;
  }

  .cc-program-actions {
    align-items: stretch;
    flex-direction: column;
  }

  .cc-program-actions .cc-actions,
  .cc-program-actions .cc-button {
    width: 100%;
  }
}

/* V8.4.17.7.41.17 Readiness My Work triage */
.cc-work-hero {
  display: flex;
  gap: 18px;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 14px;
  padding: 16px;
  background: linear-gradient(120deg, #fff 0%, #f3f8ff 100%);
  border: 1px solid var(--cc-line);
  border-left: 5px solid var(--cc-blue);
  border-radius: 6px;
}

.cc-work-hero h2,
.cc-work-hero p {
  margin: 0;
}

.cc-work-hero p {
  max-width: 900px;
  margin-top: 5px;
  color: var(--cc-muted);
}

.cc-work-summary {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 14px;
}

.cc-work-summary > div {
  min-width: 0;
  padding: 14px;
  background: #fff;
  border: 1px solid var(--cc-line);
  border-radius: 6px;
}

.cc-work-summary > div.attention {
  background: #fff4f2;
  border-color: #efb4ad;
}

.cc-work-summary strong,
.cc-work-summary span {
  display: block;
}

.cc-work-summary strong {
  color: var(--cc-blue);
  font-size: 24px;
  line-height: 1.05;
}

.cc-work-summary .attention strong {
  color: var(--cc-red);
}

.cc-work-summary span {
  margin-top: 6px;
  color: var(--cc-muted);
  font-size: 12px;
  font-weight: 700;
}

.cc-work-toolbar {
  display: grid;
  grid-template-columns: minmax(220px, 1.5fr) repeat(3, minmax(150px, .8fr)) auto;
  gap: 10px;
  align-items: end;
  margin-bottom: 10px;
  padding: 12px;
  background: #f4f8fc;
  border: 1px solid #d5e1ed;
  border-radius: 6px;
}

.cc-work-toolbar-actions {
  display: flex;
  gap: 8px;
  align-items: center;
}

.cc-work-count {
  margin: 0 0 10px;
  color: var(--cc-muted);
  font-size: 12px;
}

.cc-work-table {
  min-width: 860px;
}

.cc-work-table th:last-child,
.cc-work-table td:last-child {
  width: 86px;
  text-align: right;
}

.cc-button-small {
  min-height: 32px;
  padding: 5px 10px;
  font-size: 12px;
}

.cc-due {
  display: inline-flex;
  width: fit-content;
  align-items: center;
  min-height: 24px;
  padding: 2px 8px;
  border: 1px solid;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 800;
  white-space: nowrap;
}

.cc-due-red {
  color: #912018;
  background: #fff0ee;
  border-color: #f0b7b1;
}

.cc-due-orange {
  color: #9a3e00;
  background: #fff0e3;
  border-color: #f5c79f;
}

.cc-due-blue {
  color: #154ca6;
  background: #e9f1ff;
  border-color: #bdd2f5;
}

.cc-due-green {
  color: #075f42;
  background: #e6f7f0;
  border-color: #a8ddc8;
}

.cc-work-notifications {
  margin-top: 14px;
}

.cc-work-notice {
  margin-top: 12px;
  padding: 10px 12px;
  color: #36516f;
  background: #eaf3ff;
  border: 1px solid #c6daf4;
  border-left: 4px solid var(--cc-blue);
  border-radius: 5px;
  font-size: 12px;
}

@media (max-width: 1120px) {
  .cc-work-summary {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .cc-work-toolbar {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .cc-work-toolbar-actions {
    grid-column: 1 / -1;
  }
}

@media (max-width: 680px) {
  .cc-work-hero {
    align-items: stretch;
    flex-direction: column;
  }

  .cc-work-summary,
  .cc-work-toolbar {
    grid-template-columns: 1fr;
  }

  .cc-work-toolbar-actions {
    grid-column: auto;
  }

  .cc-work-toolbar-actions,
  .cc-work-toolbar-actions .cc-button,
  .cc-work-hero .cc-button {
    width: 100%;
  }
}


/* V8.4.17.7.41.19 Readiness reporting and management review */
.cc-report-hero {
  display: flex;
  gap: 20px;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 12px;
  padding: 17px;
  background: linear-gradient(120deg, #fff 0%, #f3f8ff 100%);
  border: 1px solid var(--cc-line);
  border-left: 5px solid var(--cc-blue);
  border-radius: 6px;
}

.cc-report-hero h2,
.cc-report-hero p {
  margin: 0;
}

.cc-report-hero p {
  max-width: 860px;
  margin-top: 5px;
  color: var(--cc-muted);
}

.cc-report-actions {
  display: flex;
  gap: 8px;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
}

.cc-report-meta {
  display: flex;
  gap: 8px 18px;
  align-items: center;
  flex-wrap: wrap;
  margin-bottom: 12px;
  padding: 10px 12px;
  color: #36516f;
  background: #eaf3ff;
  border: 1px solid #c6daf4;
  border-radius: 5px;
  font-size: 12px;
}

.cc-report-meta strong {
  color: var(--cc-blue);
}

.cc-report-warning {
  margin-bottom: 12px;
  padding: 11px 12px;
  color: #8a3b00;
  background: #fff5e8;
  border: 1px solid #f2c58f;
  border-left: 4px solid var(--cc-orange);
  border-radius: 5px;
}

.cc-report-kpis,
.cc-report-coverage,
.cc-report-governance {
  display: grid;
  gap: 10px;
}

.cc-report-kpis {
  grid-template-columns: repeat(6, minmax(0, 1fr));
  margin-bottom: 12px;
}

.cc-report-coverage {
  grid-template-columns: repeat(6, minmax(0, 1fr));
}

.cc-report-governance {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin-top: 12px;
}

.cc-report-kpis > div,
.cc-report-coverage > div,
.cc-report-governance > div {
  min-width: 0;
  padding: 13px;
  background: #fff;
  border: 1px solid var(--cc-line);
  border-radius: 6px;
}

.cc-report-coverage > div,
.cc-report-governance > div {
  background: #f8fbfe;
}

.cc-report-kpis > div.attention,
.cc-report-coverage > div.attention,
.cc-report-governance > div.attention {
  background: #fff2f0;
  border-color: #efb4ad;
}

.cc-report-kpis strong,
.cc-report-coverage strong,
.cc-report-governance strong {
  display: block;
  color: var(--cc-blue);
  font-size: 23px;
  line-height: 1.1;
}

.cc-report-kpis .attention strong,
.cc-report-coverage .attention strong,
.cc-report-governance .attention strong {
  color: var(--cc-red);
}

.cc-report-kpis span,
.cc-report-coverage span,
.cc-report-governance span,
.cc-report-coverage small {
  display: block;
  margin-top: 5px;
  color: var(--cc-muted);
  font-size: 12px;
  font-weight: 700;
}

.cc-report-coverage small {
  color: #6c7d8f;
  font-weight: 500;
}

.cc-report-section {
  margin-top: 14px;
}

.cc-report-grid {
  margin-top: 14px;
}

.cc-report-site-table,
.cc-report-domain-table,
.cc-report-gap-table {
  min-width: 860px;
}

.cc-report-domain-table th:last-child,
.cc-report-domain-table td:last-child {
  min-width: 260px;
}

.cc-report-progress {
  display: inline-block;
  width: min(190px, 65%);
  height: 8px;
  margin-right: 9px;
  overflow: hidden;
  vertical-align: middle;
  background: #dce7f1;
  border-radius: 999px;
}

.cc-report-progress span {
  display: block;
  height: 100%;
  background: var(--cc-blue);
  border-radius: inherit;
}

.cc-report-signoff {
  margin-top: 14px;
  padding: 13px 15px;
  color: #3e5269;
  background: #f8fafc;
  border: 1px solid var(--cc-line);
  border-left: 4px solid var(--cc-blue);
  border-radius: 5px;
}

.cc-report-signoff p {
  margin: 5px 0 0;
}

.cc-fieldset {
  margin: 0;
  padding: 12px;
  border: 1px solid var(--cc-line);
  border-radius: 6px;
}

.cc-fieldset legend {
  padding: 0 6px;
  color: var(--cc-navy);
  font-size: 12px;
  font-weight: 800;
}

.cc-choice-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px 14px;
}

.cc-check {
  display: flex;
  gap: 8px;
  align-items: center;
  min-width: 0;
  font-size: 13px;
}

.cc-email-preview {
  max-height: 430px;
  overflow: auto;
  padding: 10px;
  background: #eef3f7;
  border: 1px solid var(--cc-line);
  border-radius: 6px;
}

.cc-email-preview > html,
.cc-email-preview body {
  margin: 0;
}

@media (max-width: 1180px) {
  .cc-report-kpis,
  .cc-report-coverage {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 820px) {
  .cc-report-hero {
    align-items: stretch;
    flex-direction: column;
  }

  .cc-report-actions,
  .cc-report-actions .cc-button {
    width: 100%;
  }

  .cc-report-actions .cc-button {
    justify-content: center;
  }

  .cc-report-governance {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 620px) {
  .cc-report-kpis,
  .cc-report-coverage,
  .cc-report-governance {
    grid-template-columns: 1fr;
  }

  .cc-report-meta {
    align-items: flex-start;
    flex-direction: column;
  }

  .cc-choice-grid {
    grid-template-columns: 1fr;
  }
}

@media print {
  .onefsg-compliance-center {
    width: 100%;
    margin: 0;
    box-shadow: none;
  }

  .cc-header,
  .cc-source-status,
  .cc-tabs,
  .cc-kpis,
  .cc-report-actions,
  .cc-button,
  #v8-topbar,
  #v8-left-nav {
    display: none !important;
  }

  .cc-body {
    padding: 0;
  }

  .cc-panel,
  .cc-report-hero,
  .cc-report-meta,
  .cc-report-signoff {
    break-inside: avoid;
    box-shadow: none;
  }

  .cc-table-wrap {
    overflow: visible;
  }

  .cc-table {
    min-width: 0;
    font-size: 10px;
  }
}
