/* Scoped, presentation-only source matrices. */
.source-form-library .sem-section { min-width:0; min-inline-size:0; max-width:100%; }
.source-form-library .sem-section>.sfl-field { display:inline-flex; vertical-align:top; flex-direction:column; width:min(100%,28rem); margin:.45rem .8rem .8rem 0; }
.source-form-library .sem-section>.sfl-full { display:flex; width:100%; }
.source-form-library .sem-scroll { position:relative; max-width:100%; overflow-x:auto; overscroll-behavior-inline:contain; border:1px solid #dadbd6; border-radius:12px; }
.source-form-library .sem-scroll:focus-visible { outline:3px solid #b4480c; outline-offset:3px; }
.source-form-library .sem-table { border-collapse:separate; border-spacing:0; width:100%; min-width:760px; table-layout:auto; font-size:14px; }
.source-form-library .sem-table th,.source-form-library .sem-table td { border-right:1px solid #e3e4df; border-bottom:1px solid #e3e4df; padding:.4rem; text-align:left; vertical-align:top; overflow-wrap:anywhere; }
.source-form-library .sem-table thead th { background:#fff0e5; font-weight:700; }
.source-form-library .sem-table th.sem-item { position:sticky; left:0; z-index:1; background:#fffdf9; min-width:190px; max-width:290px; width:25%; }
.source-form-library .sem-table thead th.sem-item { z-index:2; background:#fff0e5; }
.source-form-library .sem-result-column { min-width:62px; }
.source-form-library .sem-notes-column { min-width:200px; width:24%; }
.source-form-library .sem-table .sem-cell { position:relative; display:flex; flex-direction:column; align-items:stretch; justify-content:center; min-width:44px; min-height:44px; margin:0; cursor:pointer; }
.source-form-library .sem-cell input[type=checkbox] { width:22px; height:22px; min-height:22px; margin:11px auto; }
.source-form-library .sem-cell select { min-width:76px; min-height:44px; padding:.45rem; }
.source-form-library .sem-cell input:not([type=checkbox]) { min-width:115px; min-height:44px; padding:.45rem; }
.source-form-library .sem-cell textarea { min-width:190px; min-height:80px; padding:.5rem; resize:vertical; }
.source-form-library .sem-cell small { max-width:160px; font-size:13px; }
.source-form-library .sem-scroll-hint { color:#674b3a; font-size:14px; margin:.7rem 0 .4rem; }
.source-form-library .sem-legend,.source-form-library .sem-note { margin:.65rem 0; line-height:1.5; overflow-wrap:anywhere; }
.source-form-library .sem-locators { margin:.65rem 0 1.4rem; font-size:13px; }
.source-form-library .sem-locators summary { cursor:pointer; min-height:44px; display:flex; align-items:center; }
.source-form-library .sem-locators dl { max-height:16rem; overflow:auto; }
.source-form-library .sem-note-fields { min-width:0; max-width:100%; margin:1.2rem 0; }
.source-form-library .sem-note-editor { display:flex; flex-direction:column; min-width:0; max-width:100%; margin:.8rem 0 1.1rem; gap:.45rem; overflow-wrap:anywhere; }
.source-form-library .sem-note-editor textarea { box-sizing:border-box; width:100%; max-width:100%; min-width:0; min-height:88px; }
.source-form-library .sem-note-editor small { font-size:13px; }
.source-form-library .sem-report-field { display:inline-block; width:46%; margin:.3rem 3% .5rem 0; vertical-align:top; overflow-wrap:anywhere; }
.source-form-library .sem-report-field h3 { font-size:1em; font-weight:700; margin:.2rem 0; }
.source-form-library .sem-report-field p { margin:.25rem 0; white-space:pre-wrap; }
.source-form-library .sem-report-field:has(.sem-note) { display:block; width:100%; }
.source-form-library .sem-report-table .sem-value { display:block; white-space:pre-wrap; overflow-wrap:anywhere; }
.source-form-library .sem-report-table { min-width:0; table-layout:fixed; font-size:9pt; }
.source-form-library .sem-report-table th.sem-item { min-width:0; max-width:none; width:28%; }
.source-form-library .sem-report-table .sem-result-column { min-width:0; }
.source-form-library .sem-report-table .sem-notes-column { min-width:0; width:25%; }
.source-form-library .sem-report-table .sfl-literal { display:inline; white-space:pre-wrap; overflow-wrap:anywhere; word-wrap:break-word; }
.source-form-library .sem-notes-row td { text-align:left; }
.source-form-library .sem-notes-row strong { display:block; margin-bottom:.25rem; }
.source-form-library .sem-report-table small { display:block; font-size:13px; }
.source-form-library .sem-print-matrix .sem-scroll-hint { display:none; }
.source-form-library .sem-sr-only { position:absolute!important; left:0!important; top:0!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; white-space:nowrap!important; border:0!important; }
@media screen {
 .source-form-library .sem-report-table { min-width:760px; table-layout:auto; font-size:14px; }
 .source-form-library .sem-print-matrix .sem-scroll-hint { display:block; }
}
@media(max-width:600px) {
 .source-form-library .sem-table th.sem-item { min-width:150px; max-width:190px; }
 .source-form-library .sem-section>.sfl-field { width:100%; margin-right:0; }
 .source-form-library .sem-table { font-size:16px; }
 .source-form-library .sem-report-field { display:block; width:100%; }
 .source-form-library .sem-table .sem-cell,.source-form-library .sem-cell select,.source-form-library .sem-cell input:not([type=checkbox]) { min-height:56px; }
 .source-form-library .sem-cell input[type=checkbox] { margin:17px auto; }
}
@media print {
 .source-form-library .sem-scroll { border:0; border-radius:0; overflow:visible; max-width:none; }
 .source-form-library .sem-table { width:100%; min-width:0; table-layout:fixed; font-size:8pt; border-collapse:collapse; }
 .source-form-library .sem-table th,.source-form-library .sem-table td { padding:3pt; border:1px solid #aaa; overflow-wrap:anywhere; word-wrap:break-word; }
 .source-form-library .sem-table th.sem-item { position:static; min-width:0; max-width:none; width:28%; background:#fff; }
 .source-form-library .sem-table .sem-result-column { min-width:0; width:auto; }
 .source-form-library .sem-table .sem-notes-column { min-width:0; width:25%; }
 .source-form-library .sem-table thead { display:table-header-group; }
 .source-form-library .sem-table tr { break-inside:avoid; page-break-inside:avoid; }
 .source-form-library .sem-legend,.source-form-library .sem-note { font-size:9pt; margin:4pt 0; }
 .source-form-library .sem-report-field { font-size:9pt; width:46%; margin:3pt 3% 5pt 0; }
 .source-form-library .sem-report-table small { font-size:8pt; }
 .source-form-library .sem-scroll-hint,.source-form-library .sem-locators { display:none; }
 .source-form-library .sem-section { padding:6pt; }
 .source-form-library .sem-section h2 { font-size:13pt; }
 .source-form-library .sem-section h3 { font-size:10pt; }
}
