/* Tablet portrait and landscape: retain useful space and touch-sized controls. */
@media screen and (min-width: 768px) and (max-width: 1199.98px) {
    .site-header { min-height: 72px; padding-block: .5rem; }
    .site-header .client-logo-img { height: 40px; }
    .site-header > .container { max-width: none; padding-inline: 24px; flex-wrap: wrap; }
    .site-header .site-header-controls { order: 0; margin-left: auto; }
    .site-header .navbar-collapse { flex-basis: 100%; padding-block: .75rem; }
    .site-header .navbar-nav { align-items: stretch !important; gap: .35rem !important; }
    .site-header .nav-item { margin-left: 0 !important; }
    .site-header .nav-link { min-height: 44px; display: flex; align-items: center; }
    .site-header .navbar-brand { font-size: 1.15rem; padding-block: 0; }

    .dashboard-main { padding: 1.5rem 24px; min-width: 0; max-width: none; }
    .dashboard-title { font-size: 1.9rem; }
    .dashboard-header { margin-bottom: 1.5rem; }
    .dashboard-sidebar .sidebar-link { min-height: 44px; }
    .dashboard-sidebar .sidebar-close-btn { display: grid !important; place-items: center; width: 44px; height: 44px; }
    .dashboard-review-banner { flex-wrap: wrap; }
    .dashboard-wrapper :is(.table-responsive, .table-scroll-container) {
        max-width: 100%; overflow-x: auto; overscroll-behavior-x: contain;
    }
    .dashboard-wrapper :is(.form-control, .form-select, .filter-input, .filter-select) {
        min-height: 44px; font-size: 16px;
    }
    .dashboard-wrapper :is(.btn, .filter-btn-primary, .filter-btn-clear, .sale-action-btn,
        .export-btn, .row-cost-breakdown > summary, .date-filter-disclosure > summary) {
        min-height: 44px;
    }
    .sales-workspace .sale-table .sale-action-void { min-width: 44px; width: auto; }
    .sales-workspace .row-cost-breakdown { max-width: none; }
    .dashboard-materials :is(.inv-filter-panel, .inv-bom-filter-card) form.row {
        display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; margin: 0;
    }
    .dashboard-materials :is(.inv-filter-panel, .inv-bom-filter-card) form.row > div { width: auto; min-width: 0; padding: 0; margin: 0; }
    .dashboard-materials :is(.inv-filter-panel, .inv-bom-filter-card) form.row > div:last-child { grid-column: 1 / -1; }

    .svc-form-page { padding-block: 2rem 3rem; }
    .svc-form-page > .container { max-width: 900px; padding-inline: 24px; }
    .svc-form-page > .container > .row > [class*="col-"] { width: 100%; }
    .svc-form-card { padding: 2rem; }
    .customer-settings > .container { grid-template-columns: minmax(0, 1fr); gap: 1.5rem; }
    .customer-settings .settings-account-strip { position: static; }
    .cust-dashboard > .container { max-width: none; padding-inline: 24px; }
    .cust-dashboard > .container > .row > [class*="col-lg-"] { width: 100%; }
    .viz-page > .container { max-width: none; padding-inline: 24px; }
    .viz-grid > section { min-width: 0; padding: 24px; }
    html[data-theme-scope="customer"] :is(.form-control, .form-select, .sort-select) {
        min-height: 44px; font-size: 16px;
    }
    html[data-theme-scope="customer"] :is(.filter-pill, .cust-tab-btn, .btn-cust-settings) {
        min-height: 44px; display: inline-flex; align-items: center; justify-content: center;
    }
}

@media screen and (min-width: 768px) and (max-width: 991.98px) {
    .viz-grid { grid-template-columns: minmax(0, 1fr); }
    .viz-photo-section { border-right: 0; border-bottom: 1px solid var(--site-border); }
}
