/* Keep the existing workspace components in the original application grid. */
.native-gate4-view-host { grid-column: 2; grid-row: 2; min-width: 0; min-height: 0; overflow: auto; }
.native-gate4-view-host > main { width: 100%; min-width: 0; }
.native-gate4-client { min-width: 0; padding: 18px; }
.native-gate4-client > .cp-back { display: inline-flex; margin-bottom: 16px; }
.native-client-conversations { grid-column: 1 / -1; min-width: 0; }
.native-client-conversations .client-portal-panel__body { padding: 0; min-width: 0; }
.native-client-conversations .cv-workspace { height: 640px; min-height: 640px; }
/* The original inbox sizes its reader from a definite containing height. A
   native wrapper must supply that height even when the application grid stacks. */
.native-gate4-view-host > .cv-workspace { height: calc(100dvh - 48px); min-height: 480px; }
.native-gate4-client .native-gate4-view-host > .cv-workspace { height: calc(100dvh - 96px); }
/* Cancellation retains the record, so its explicit label needs more room than
   the original compact Delete action. */
[data-native-gate="4"] .appointments-quick-action-toolbar > [data-delete-selected-appointment] { flex: 0 0 auto; width: auto; min-width: 104px; }
/* The local message menus open above the compact composer. Keep their hit
   targets outside its box visible; the thread and text field own scrolling. */
[data-native-gate="4"] .cv-thread-panel:not(.is-email) > .cv-composer { overflow: visible; }
@media (max-width: 1179px) { .native-gate4-view-host { grid-column: 1 / -1; } }
@media (max-width: 600px) { .native-gate4-client { padding: 10px; } }
/* In the narrow native calendar, Filters and Manage follow the schedule action
   in normal flow instead of covering its label and click target. */
@media (max-width: 430px) {
  [data-native-gate] .business-calendars-calendar__header { flex-basis: auto; }
  [data-native-gate] .business-calendars-calendar-actions-secondary { position: static; width: 100%; }
}
