/* Shared tablet rules keep the workspace usable with touch, a keyboard, or split view. */
html { scroll-padding-block: 24px 110px; }
.app-topbar { height: auto; min-height: 72px; padding-block: 10px; flex-wrap: wrap; }
.app-topbar .connection-status { min-height: 44px; }
.main-content input, .main-content textarea, .main-content select { scroll-margin-block: 24px 110px; }
.main-content > section, .main-content .row > * { min-width: 0; }
.capture-action-bar { padding-bottom: max(16px, env(safe-area-inset-bottom)); }
.keyboard-open .capture-action-bar { position: static; }
.workspace-nav a, summary, .btn, .visit-start-option { touch-action: manipulation; }
.order-add-items { display: none; }
.order-view-tabs [aria-pressed="true"] { background: var(--hbl-green); color: #fff; }

@media (max-width: 991.98px), (max-width: 1199.98px) and (orientation: portrait) {
    .order-view-tabs { display: flex !important; }
    [data-order-pane] { width: 100%; }
    [data-order-pane]:not(.is-active) { display: none; }
    .order-add-items { display: inline-flex; }
}

@media (max-width: 1399.98px) {
    .main-content { padding: 24px; }
    .app-topbar { padding-inline: 24px; }
    .mobile-navigation { padding: 12px 24px; }
    .mobile-navigation .workspace-nav { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .mobile-navigation .nav-separator { display: none; }
    .app-topbar .workspace-label { display: none !important; }
    .topbar-status { gap: 12px; }
    .btn, button, .form-control, .form-select { min-height: 48px; }
    .form-control, .form-select { font-size: 1rem; }
    .form-check-input { width: 1.25em; height: 1.25em; }
    summary { min-height: 48px; padding-block: 12px; }
    .record-tabs .nav-link { min-height: 48px; }
    .page-heading { margin-bottom: 20px; }
    .page-heading p:last-child { margin-bottom: 0; }
    .customer-card, .record-card { padding: 20px; }
}

@media (min-width: 600px) and (max-width: 991.98px) {
    .record-tabs { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .record-tabs .nav-link { white-space: normal; }
    .customer-facts { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 599.98px) {
    .main-content { padding: 20px 12px; }
    .app-topbar { padding-inline: 12px; gap: 8px; }
    .topbar-status { gap: 8px; }
    .topbar-status #current-user-name { max-width: 90px; }
    .mobile-navigation { padding-inline: 12px; }
    .mobile-navigation .workspace-nav { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .record-tabs { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .record-tabs .nav-link { white-space: normal; }
    .capture-action-bar { padding-inline: 12px; gap: 8px; }
}

@media (pointer: coarse) {
    .form-control, .form-select { font-size: 1rem; }
    .btn, button { min-height: 48px; }
}
