.section-review.panel { border-color: #dce5ec; }
.section-workflow-heading { padding: 10px 14px; }
.section-workflow-heading .section-workflow-toggle > strong,
.section-review-heading .section-workflow-toggle > strong { font-size: 14px; font-weight: 600; line-height: 20px; }
.section-workflow-toggle { display: flex; flex: 1; align-items: center; flex-wrap: wrap; gap: 10px; width: 100%; min-width: 0; padding: 0; border: 0; background: transparent; color: inherit; text-align: left; font: inherit; cursor: pointer; }
.section-workflow-toggle > .glyphicon:last-child { margin-left: auto; font-size: 11px; }
.section-workflow-toggle:focus-visible { outline: 2px solid #2780e3; outline-offset: 4px; }
.section-review .section-review-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 10px 14px; background: #f7fafc; border-color: #e3eaf0; }
.section-review-heading strong { color: #30495f; }
.section-review-heading strong i { margin-right: 6px; color: #397da6; }
.section-review > .panel-body { padding: 16px; }
.section-review-overview { margin-bottom: 16px; }
.section-review-status-row { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; }
.section-review-status { padding: 5px 10px; border-radius: 5px; background: #eaf3fc; color: #245c91; font-size: 12px; font-weight: 600; overflow-wrap: anywhere; }
.section-review-status-approved { background: #e8f5ed; color: #246a40; }
.section-review-status-draft { background: #eef2f5; color: #536474; }
.section-review-version { color: #687a8b; font-size: 12px; white-space: nowrap; }
.section-review-awaiting { margin: 12px 0 0; color: #475b6d; overflow-wrap: anywhere; }
.section-review .section-review-note { margin: 8px 0; color: #657587; font-size: 12px; line-height: 1.6; }
.section-review-note i { margin-right: 4px; }
.section-review-disclosure { margin: 10px 0 0; border: 1px solid #e1e8ee; border-radius: 6px; }
.section-review-toggle { display: flex; align-items: center; gap: 10px; width: 100%; padding: 14px; border: 0; border-radius: 6px; background: #f8fafc; color: #435a6d; text-align: left; font: inherit; cursor: pointer; }
.section-review-toggle:hover { background: #eef4f8; }
.section-review-toggle:focus-visible, .section-review-preview:focus-visible, .section-review-history:focus-visible { outline: 2px solid #2780e3; outline-offset: 2px; }
.section-review-toggle > .glyphicon:last-child { flex-shrink: 0; font-size: 11px; }
.section-review-toggle-icon { width: 16px; color: #71899c; text-align: center; }
.section-review-disclosure-heading { flex: 1; min-width: 0; }
.section-review-disclosure-body { padding: 14px; border-top: 1px solid #e4ebf1; }
.section-review-disclosure-body > .section-review-note:first-child { margin-top: 0; margin-bottom: 14px; }
.section-review-route { margin: 18px 0; overflow-wrap: anywhere; }
.section-review-decision { margin: 16px 0; padding: 16px; border: 1px solid #e0e8ef; border-radius: 6px; background: #fbfcfe; }
.section-review label { font-size: 13px; font-weight: 600; }
.section-review textarea { resize: vertical; }
.section-review-actions { display: flex; flex-wrap: wrap; gap: 8px; }
.section-review-actions .btn { white-space: normal; }
.section-review-unsaved { padding: 10px 12px; margin: 12px 0; border-radius: 5px; background: #fff8e8; color: #80622c; font-size: 12px; }
/* Use the same timeline, cards and colour utilities as indicator comments and audits. */
.section-review-history { max-height: 450px; overflow: auto; overscroll-behavior: contain; }
.section-review-history .tl-content { overflow-wrap: anywhere; }
.section-review-event-reason { white-space: pre-line; }
.section-review-version-toolbar { display: flex; align-items: flex-end; flex-wrap: wrap; gap: 10px 20px; margin-bottom: 14px; }
.section-review-version-picker { flex: 1 1 230px; min-width: 0; }
.section-review-version-toolbar > .section-review-note { flex: 1 1 180px; margin-bottom: 0; }
.section-review-preview { max-height: 520px; padding: 16px; overflow: auto; overscroll-behavior: contain; border: 1px solid #e1e8ee; border-radius: 5px; background: #f1f5f8; }
.section-review-document { min-height: 120px; padding: 24px; border: 1px solid #e1e7ed; background: #fff; color: #3d4d5c; box-shadow: 0 2px 6px rgba(36, 57, 76, .05); overflow-wrap: anywhere; }
.section-review-document:after { display: block; clear: both; content: ''; }
.section-review-document h4 { margin: 0 0 18px; color: #2f4354; font-size: 18px; font-weight: 600; }
.section-review-document img { max-width: 100%; height: auto; }
.section-review-document .report-content-image { max-width: 100%; }
.section-review-document table { max-width: 100%; border-collapse: collapse; }
.section-review-document th, .section-review-document td { padding: 7px; border: 1px solid #dce3ea; vertical-align: top; }
.section-review-document th { background: #edf1f2; }
@media (max-width: 600px) {
  .section-review > .panel-body { padding: 12px; }
  .section-review-toggle, .section-review-disclosure-body, .section-review-decision { padding: 12px; }
  .section-review-preview { padding: 8px; max-height: 420px; }
  .section-review-document { padding: 14px; }
}
