/* Screen controls only: leave the bulletin print canvas and editable text alone. */
.visits-table { table-layout: fixed; min-width: 640px; }
.visits-table .visits-date-column { width: 26%; }
.visits-table .visits-actions-column { width: 240px; }
.visits-table th:last-child, .visits-table td:last-child { text-align: right; }
.visits-table td:nth-child(2) { overflow-wrap: anywhere; }
.visits-table .table-actions { justify-content: flex-end; }
.form-select {
    padding-inline-end: 46px;
    background-position: right 15px center;
}
.search-select > .search-select-trigger {
    padding-inline-end: 46px;
    overflow-wrap: anywhere;
    line-height: 1.5;
}
.filter-bar { flex-wrap: wrap; }
.filter-bar > div { flex: 1 1 210px; min-width: 0; max-width: 100%; }
.filter-bar > .filter-grow { flex: 2 1 260px; }
.filter-bar > .btn { flex: 0 0 auto; }
.dashboard-grid > *, .dashboard-aside > * { min-width: 0; }
.calendar-panel .panel-heading { flex-wrap: wrap; align-items: center; }
.calendar-panel .legend { flex-wrap: wrap; }
.calendar-toolbar { flex-wrap: wrap; align-items: center; }
.calendar-toolbar h3 { margin: 0; }
.calendar-toolbar > div { flex-wrap: wrap; }
.calendar-picker {
    display: grid;
    grid-template-columns: minmax(0, 240px) minmax(0, 160px) auto;
    justify-content: start;
    align-items: end;
    gap: 14px;
    margin: 0 24px 22px;
}
.calendar-picker-field { min-width: 0; }
.calendar-picker .form-label { display: block; margin: 0 0 8px; }
.calendar-picker > .btn { min-height: 52px; margin: 0; width: auto; }
.calendar-weekdays, .calendar-grid { margin-inline: 24px; }
.page-heading { flex-wrap: wrap; gap: 16px; }
.table-actions { flex-wrap: wrap; }
.table-actions > form { margin: 0; }
@media (max-width: 767px) {
    .calendar-picker {
        margin: 0 18px 18px;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    }
    .calendar-picker > .btn { grid-column: 1 / -1; width: 100%; }
    .calendar-weekdays, .calendar-grid { margin-inline: 18px; }
}
@media (max-width: 480px) {
    .calendar-picker { grid-template-columns: minmax(0, 1fr); }
    .filter-bar > div, .filter-bar > .filter-grow { flex-basis: 100%; }
    .filter-bar > .btn { flex: 1 1 auto; }
}
