/* Shared feedback and controls; section-specific layouts stay in their own CSS. */
.record-save-state { font-size: 12px; font-weight: 500; color: var(--muted); white-space: nowrap; }
.record-save-state.is-dirty { color: #805711; background: #fff6dc; padding: 5px 8px; border-radius: 6px; }
.record-save-state.is-saved { color: var(--success); }
.task-context-line { margin: 8px 0; display: grid; gap: 3px; font-size: 12px; color: var(--muted); overflow-wrap: anywhere; }
.task-context-line > span:first-child { color: var(--text); }
.task-search-field { min-width: 180px; flex: 1 1 220px; }
.due-badge small { font-size: 10px; font-weight: 400; margin-left: 5px; }
.file-upload-form .intake-upload-zone { padding: 14px; }
.file-upload-form .intake-upload-zone .field { margin: 0; }
.file-upload-form .intake-pending-file { flex-wrap: wrap; }
.file-upload-form .intake-pending-detail { flex-basis: 110px; }
.file-upload-form .intake-pending-files { max-height: 260px; overflow-y: auto; }
.button:disabled { cursor: not-allowed; }
.record-aux-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px; margin: 0 0 12px; }
.record-aux-actions .drawer-toggle-fixed { position: static; box-shadow: none; }
.details-form, .form-section, .form-grid, .form-grid > .field { min-width: 0; }
.form-grid { grid-template-columns: repeat(auto-fill, minmax(min(240px, 100%), 1fr)); }
.field-hint-tooltip { display: none; }
.field-hint:hover .field-hint-tooltip, .field-hint:focus .field-hint-tooltip, .field-hint:focus-visible .field-hint-tooltip { display: block; }
.breadcrumbs { min-width: 0; flex-wrap: wrap; row-gap: 6px; }
.breadcrumbs > :last-child { min-width: 0; max-width: 100%; overflow-wrap: anywhere; white-space: normal; }
@media (max-width: 980px) {
    .app-shell { grid-template-rows: auto 1fr; align-content: start; }
    .record-breadcrumb-toolbar, .person-breadcrumb-toolbar { flex-direction: column; align-items: stretch; gap: 8px; }
    .record-breadcrumb-toolbar > .breadcrumbs, .person-breadcrumb-toolbar > .breadcrumbs { width: 100%; flex: none; flex-wrap: wrap; overflow: visible; }
    .record-breadcrumb-toolbar > .breadcrumbs > :last-child, .person-breadcrumb-toolbar > .breadcrumbs > :last-child { flex: 0 1 auto; white-space: normal; }
    .record-header-actions, .person-header-actions { flex-wrap: wrap; }
    .form-toc.record-sticky-toc, .form-toc.person-sticky-toc { position: static; }
}
@media (max-width: 720px) {
    .record-save-state { white-space: normal; flex: 1 1 100%; }
    .record-header-actions { flex-wrap: wrap; }
    .task-context-line { font-size: 12px; }
    .table-wrap td { overflow-wrap: anywhere; }
}
