/* Replacement Sensory Profile table. The assessment-purpose box is unchanged. */
.profile-table { width: 100%; min-width: 780px; table-layout: fixed; border-collapse: collapse; font-variant-numeric: tabular-nums; }
.profile-group-column { width: 4%; }
.profile-section-column { width: 28%; }
.profile-raw-column { width: 13%; }
.profile-table th, .profile-table td { border: 1px solid #afc3dc; padding: 9px 6px; text-align: center; vertical-align: middle; }
.profile-table thead th { background: #eaf2fc; color: #244c7d; font-size: 11px; line-height: 1.5; font-weight: 650; overflow-wrap: anywhere; }
.profile-table .profile-comparison-band th { padding: 7px 5px; background: #255f9e; color: #fff; font-size: 11px; }
.profile-table .profile-group { padding: 7px 3px; background: #255f9e; color: #fff; }
.profile-group > span { display: inline-block; writing-mode: vertical-rl; transform: rotate(180deg); white-space: nowrap; font-size: 11px; font-weight: 650; line-height: 1.3; }
.profile-table .profile-row-heading { position: relative; padding-right: 32px; text-align: left; background: #f0f5fc; color: #304d70; font-size: 12px; line-height: 1.5; overflow-wrap: anywhere; }
.profile-table .profile-clear { position: absolute; right: 3px; top: 50%; transform: translateY(-50%); display: inline-flex; align-items: center; justify-content: center; width: 28px; min-height: 34px; margin: 0; padding: 0; border: 1px solid transparent; border-radius: 4px; font-size: 18px; text-decoration: none; }
.profile-table .profile-clear:hover { background: #e0eaf8; border-color: #adc1dc; }
.profile-table .profile-clear:focus-visible { outline: 2px solid #255f9e; outline-offset: 1px; }
.profile-table .profile-group-start > th, .profile-table .profile-group-start > td { border-top: 2px solid #789bbf; }
.profile-table .ssp-score { gap: 4px; font-size: 12px; }
.profile-table .ssp-score input { width: 43px; padding: 7px 3px; }
.profile-table .profile-rating-cell { padding: 3px; }
.profile-rating { display: flex; min-height: 55px; align-items: center; justify-content: center; border-radius: 4px; cursor: pointer; }
.profile-rating:hover { background: #eaf2fc; }
.profile-rating:has(input:checked) { background: #e0ecfc; box-shadow: inset 0 0 0 1px #9db8d9; }
.profile-rating input { width: 18px; height: 18px; margin: 0; accent-color: #255f9e; cursor: pointer; }

.print-page .profile-table { min-width: 0; }
.print-page .profile-table th, .print-page .profile-table td { padding: 8px 5px; }
.print-page .profile-table thead th { font-size: 10px; }
.print-page .profile-table .profile-row-heading { padding: 8px 6px; font-size: 11px; }
.print-page .profile-table tbody tr { height: 49px; }
.print-page .profile-table .ssp-score { gap: 3px; font-size: 11px; }
.profile-rating-print { display: inline-flex; align-items: center; justify-content: center; }
.profile-print-circle { display: inline-flex; align-items: center; justify-content: center; width: 16px; height: 16px; border: 1px solid #3d5b80; border-radius: 50%; color: #142f50; vertical-align: middle; }
.profile-print-circle svg { display: block; width: 100%; height: 100%; }
.print-page .profile-table .ssp-score-value { min-width: 19px; }
.print-page.source-page-17 .ssp-detail-print { margin-bottom: 16px; }
.print-page.source-page-18 .ssp-detail-print { margin-bottom: 11px; }
.print-page.source-page-19 .ssp-detail-print { margin-bottom: 12px; }
.print-page.source-page-17 .ssp-detail-answer .print-answer { min-height: 162px; }
.print-page.source-page-18 .ssp-detail-answer .print-answer { min-height: 100px; }
.print-page.source-page-19 .ssp-detail-answer .print-answer { min-height: 132px; }

@media screen and (max-width: 650px) {
  .print-page .profile-table { min-width: 690px; }
}

@media print {
  .print-page .profile-table { width: 100%; min-width: 0; }
  .print-page .profile-table th, .print-page .profile-table td { padding: 1.3mm 1mm; }
  .print-page .profile-table thead th { font-size: 7pt; line-height: 1.4; }
  .print-page .profile-table .profile-comparison-band th { padding: 1.3mm .7mm; font-size: 7pt; }
  .print-page .profile-table .profile-group { padding: 1mm .5mm; }
  .print-page .profile-group > span { font-size: 7pt; }
  .print-page .profile-table .profile-row-heading { padding: 1.3mm 1.5mm; font-size: 7.5pt; }
  .print-page .profile-table .profile-group-start > th,
  .print-page .profile-table .profile-group-start > td { border-top-width: .4mm; }
  .print-page .profile-table tbody tr { height: 10.5mm; break-inside: avoid; }
  .print-page .profile-table .ssp-score { gap: .6mm; font-size: 8pt; }
  .print-page .profile-table .ssp-score-value { min-width: 6mm; }
  .print-page .profile-table .profile-print-circle { width: 3.6mm; height: 3.6mm; border-width: .25mm; }
  .print-page.source-page-17 .ssp-detail-print { margin-bottom: 4mm; }
  .print-page.source-page-18 .ssp-detail-print { margin-bottom: 2.8mm; }
  .print-page.source-page-19 .ssp-detail-print { margin-bottom: 3mm; }
  .print-page.source-page-17 .ssp-detail-answer .print-answer { min-height: 43mm; }
  .print-page.source-page-18 .ssp-detail-answer .print-answer { min-height: 26mm; }
  .print-page.source-page-19 .ssp-detail-answer .print-answer { min-height: 35mm; }
  .print-page .profile-table thead th,
  .print-page .profile-table .profile-group,
  .print-page .profile-table .profile-row-heading { print-color-adjust: exact; -webkit-print-color-adjust: exact; }
}
