/* Source pages 16–21: manual sensory scores, interpretations and goals. */
.section-progress { grid-template-columns: repeat(8, minmax(0, 1fr)); }
.steps a[data-step="standardised"] .step-letter { font-size: 9px; }
.ssp-introduction { margin: 24px 0 12px; font-size: 13px; line-height: 1.7; }
.ssp-summary-card > .field textarea { min-height: 160px; }
.ssp-table-scroll { overflow-x: auto; max-width: 100%; border-radius: 5px; }
.ssp-table-scroll:focus-visible { outline: 3px solid #255f9e; outline-offset: 4px; }
.ssp-table { width: 100%; min-width: 590px; table-layout: fixed; border-collapse: collapse; }
.ssp-section-column { width: 36%; }
.ssp-raw-column { width: 19%; }
.ssp-table th, .ssp-table td { border: 1px solid #a9bdd5; padding: 10px 8px; vertical-align: middle; }
.ssp-table thead th { background: #e7effa; color: #234c7e; font-size: 11px; line-height: 1.6; text-align: center; }
.ssp-table tbody th { color: #304d70; font-size: 12px; line-height: 1.6; text-align: left; font-weight: 500; overflow-wrap: anywhere; }
.ssp-table tbody td { text-align: center; }
.ssp-total-row th, .ssp-total-row td { background: #f3f7fd; font-weight: 650; }
.ssp-score { display: inline-flex; align-items: center; justify-content: center; gap: 5px; max-width: 100%; font-size: 13px; line-height: 1.5; color: #243e60; }
.ssp-score input { width: 51px; min-width: 0; min-height: 42px; padding: 7px 4px; border: 1px solid #a9bdd5; border-radius: 5px; background: #fbfcfd; color: #243e60; font: inherit; text-align: center; }
.ssp-score input:focus-visible { outline: 3px solid #255f9e; outline-offset: 2px; }
.ssp-score-maximum { white-space: nowrap; font-weight: 650; }
.ssp-checkbox-hit { display: flex; align-items: center; justify-content: center; min-height: 44px; width: 100%; cursor: pointer; }
.ssp-checkbox-hit input { width: 20px; height: 20px; margin: 0; accent-color: #255f9e; cursor: pointer; }
.ssp-detail-heading { display: grid; grid-template-columns: minmax(0, 1fr) auto auto; align-items: center; gap: 16px; margin: 0 0 15px; font-size: 15px; line-height: 1.6; color: #243e60; }
.ssp-detail-name { min-width: 0; overflow-wrap: anywhere; }
.ssp-detail-card textarea { min-height: 210px; }
.ssp-interpretations-card textarea { min-height: 250px; }
.overall-card textarea { min-height: 400px; }
.plan-goals textarea { min-height: 240px; }
.therapist-fields { margin-top: 28px; }

.print-page .ssp-introduction { font-size: 11px; margin: 15px 0 9px; }
.print-page .ssp-assessment-answer,
.print-page .ssp-detail-answer,
.print-page .ssp-interpretations-print .print-field,
.print-page .final-print-section .print-field { display: block; }
.print-page .ssp-assessment-answer .print-label,
.print-page .ssp-interpretations-print .print-label,
.print-page .final-print-section .print-label { margin-bottom: 8px; }
.print-page .ssp-assessment-answer .print-answer { min-height: 135px; }
.print-page .ssp-table { min-width: 0; }
.print-page .ssp-table th, .print-page .ssp-table td { padding: 10px 7px; }
.print-page .ssp-table thead th { font-size: 11px; }
.print-page .ssp-table tbody th { font-size: 11px; }
.print-page .ssp-table tbody tr { height: 57px; }
.print-page .ssp-score { font-size: 12px; }
.print-page .ssp-score-value { display: inline-block; min-width: 25px; max-width: 100%; white-space: pre-wrap; overflow-wrap: anywhere; }
.print-page .ssp-print-check { display: inline-flex; width: 16px; height: 16px; border: 1px solid #3d5b80; border-radius: 2px; align-items: center; justify-content: center; vertical-align: middle; }
.print-page .ssp-print-check svg { display: block; width: 13px; height: 13px; }
.print-page .ssp-detail-print { margin-bottom: 23px; }
.print-page .ssp-detail-heading { font-size: 12px; margin-bottom: 9px; gap: 15px; }
.print-page .ssp-detail-answer { margin: 0; }
.print-page .ssp-detail-answer .print-answer { min-height: 220px; }
.print-page .ssp-interpretations-print .print-answer { min-height: 230px; }
.print-page .overall-print .print-answer { min-height: 410px; }
.print-page .plan-goals { display: block; }
.print-page .plan-goals .print-answer { min-height: 225px; }
.print-page .therapist-fields { margin: 27px 0 0; gap: 24px; }
.print-page .therapist-fields .print-field { margin: 0; }
.print-page .therapist-fields .print-answer { min-height: 36px; }

@media screen and (max-width: 650px) {
  .steps a[data-step="standardised"] { grid-column: auto; flex-direction: column; justify-content: flex-start; gap: 7px; text-align: center; padding: 10px 4px; }
  .steps a[data-step="standardised"] strong { max-width: 82px; font-size: 10px; }
  .steps a[data-step="standardised"] .step-letter { width: 29px; height: 31px; }
  .ssp-summary-card { padding: 18px 12px; }
  .ssp-detail-heading { grid-template-columns: minmax(0, 1fr) auto; gap: 10px; font-size: 13px; }
  .ssp-detail-heading > span[aria-hidden] { display: none; }
  .ssp-detail-heading .ssp-score { font-size: 12px; }
  .ssp-detail-heading .ssp-score input { width: 43px; }
  .therapist-fields { grid-template-columns: minmax(0, 1fr); }
  .print-page .ssp-table { min-width: 540px; }
  .print-page .ssp-detail-heading { font-size: 11px; }
}

@media print {
  .print-page .ssp-table-scroll { overflow: visible; border-radius: 0; }
  .print-page .ssp-table { min-width: 0; }
  .print-page .ssp-introduction { font-size: 8.5pt; margin: 3mm 0 2mm; }
  .print-page .ssp-assessment-answer { margin-bottom: 3mm; }
  .print-page .ssp-assessment-answer .print-label,
  .print-page .ssp-interpretations-print .print-label,
  .print-page .final-print-section .print-label { margin-bottom: 2mm; }
  .print-page .ssp-assessment-answer .print-answer { min-height: 38mm; }
  .print-page .ssp-table th, .print-page .ssp-table td { padding: 2mm 1.8mm; }
  .print-page .ssp-table thead th { font-size: 8pt; height: 16mm; }
  .print-page .ssp-table tbody th { font-size: 8.5pt; }
  .print-page .ssp-table tbody tr { height: 17mm; break-inside: avoid; }
  .print-page .ssp-score { gap: 1mm; font-size: 9pt; }
  .print-page .ssp-score-value { min-width: 7mm; }
  .print-page .ssp-print-check { width: 4mm; height: 4mm; border-width: .3mm; }
  .print-page .ssp-print-check svg { width: 3.2mm; height: 3.2mm; }
  .print-page .ssp-detail-print { margin-bottom: 5mm; }
  .print-page .ssp-detail-heading { grid-template-columns: minmax(0, 1fr) auto auto; font-size: 9.5pt; margin-bottom: 2mm; gap: 4mm; break-after: avoid; }
  .print-page .ssp-detail-heading > span[aria-hidden] { display: inline; }
  .print-page .ssp-detail-answer { display: block; margin: 0; }
  .print-page .ssp-detail-answer .print-answer { min-height: 58mm; }
  .print-page .ssp-interpretations-print .print-field { display: block; }
  .print-page .ssp-interpretations-print .print-answer { min-height: 65mm; }
  .print-page .overall-print .print-answer { min-height: 112mm; }
  .print-page .plan-goals .print-field { display: block; margin-bottom: 5mm; }
  .print-page .plan-goals .print-answer { min-height: 65mm; }
  .print-page .therapist-fields { display: grid; grid-template-columns: 2fr 1fr; margin-top: 8mm; gap: 8mm; }
  .print-page .therapist-fields .print-field { display: block; margin: 0; }
  .print-page .therapist-fields .print-answer { min-height: 9mm; }
  .print-page .ssp-table thead th,
  .print-page .ssp-total-row th,
  .print-page .ssp-total-row td { print-color-adjust: exact; -webkit-print-color-adjust: exact; }
}
