.site-actions { display: grid; gap: 1rem; min-width: 0; }
.site-actions > *, .sa-form > *, .sa-form-grid > * { min-width: 0; max-width: 100%; }
.sa-report-list, .sa-report, .sa-record { border: 1px solid var(--line); border-radius: 8px; padding: 1rem; background: white; }
.sa-report-list > summary, .sa-report summary, .sa-record summary { cursor: pointer; font-weight: 650; color: var(--navy); padding: .4rem 0; }
.sa-report { margin-top: .85rem; background: #f8fafb; }
.sa-action-list { display: grid; gap: 1rem; }
.sa-record header { display: flex; flex-wrap: wrap; gap: .6rem; justify-content: space-between; align-items: start; }
.sa-record h4, .sa-report h4 { margin: .35rem 0 .6rem; color: var(--navy); }
.sa-record h5 { font-size: 1rem; margin: .4rem 0; }
.sa-prewrap { white-space: pre-wrap; overflow-wrap: anywhere; }
.sa-facts { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .7rem; }
.sa-facts dt { color: var(--muted); font-size: .85rem; }
.sa-facts dd { margin: .2rem 0; font-weight: 600; }
.sa-response { padding: .85rem; border-left: 3px solid #97b6c7; background: #f2f7fa; margin: .8rem 0; }
.sa-form { display: grid; gap: .8rem; margin: .8rem 0; border-top: 1px solid var(--line); padding-top: .8rem; }
.sa-form-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .8rem; }
.sa-form label { display: grid; gap: .35rem; font-weight: 600; }
.sa-form small { font-weight: 400; color: var(--muted); }
.sa-wide { grid-column: 1 / -1; }
.sa-form textarea { min-height: 5.5rem; resize: vertical; }
.sa-form input, .sa-form select, .sa-form textarea { width: 100%; box-sizing: border-box; font: inherit; }
.sa-form > button { justify-self: start; }
.sa-form [data-sa-feedback] { margin: 0; overflow-wrap: anywhere; }
.sa-record, .sa-report, .sa-history, .sa-evidence { overflow-wrap: anywhere; }
.sa-history { margin-top: .8rem; }
.sa-history li { margin-bottom: .6rem; }
.sa-history p { margin: .2rem 0; }
.sa-overdue { background: #fff0ee; color: #972b20; }
@media(max-width:640px) {
  .site-actions .progress-cards, .sa-form-grid, .sa-facts { grid-template-columns: minmax(0,1fr); }
  .sa-record, .sa-report-list, .sa-report { padding: .75rem; }
  .sa-form button, .sa-form > button, .sa-form .progress-actions { width: 100%; justify-self: stretch; }
  .sa-form input, .sa-form select, .sa-form textarea { min-height: 44px; }
}
