.view[aria-busy="true"]:not([data-scoped-refreshing="true"]) > :not([data-scoped-notice]),
.view[data-scoped-unavailable="true"] > :not([data-scoped-notice]) { display: none !important; }
[data-scoped-notice][hidden] { display: none; }
.scoped-refresh-indicator { display: inline-flex; align-items: center; min-height: 32px; margin: 8px 0 12px; padding: 4px 12px; border: 1px solid var(--line, #405853); border-radius: 999px; font-size: 13px; }
.scoped-pagination { display: flex; gap: 12px; align-items: center; flex-wrap: wrap; margin: 16px 0; }
.scoped-pagination span { font-size: 14px; }
#importModal .import-summary{background:var(--metric-bg);color:var(--text-primary);border:1px solid var(--border-default)}
#importModal .import-summary strong{color:var(--text-primary)}
#importModal .import-summary span,#importModal .import-summary small{color:var(--text-secondary)}
#importModal .import-summary small{grid-column:1/-1;line-height:1.45}

/* Wave 6 bounded odometer-history panel; existing page/toolbar rules unchanged. */
.odometer-history-panel{min-width:0;margin:16px 0;padding:16px;border:1px solid var(--line,#dce3ea);border-radius:12px}
.odometer-history-panel h3,.odometer-history-panel p{overflow-wrap:anywhere}
.odometer-history-row{display:flex;justify-content:space-between;gap:12px;padding:8px 0;min-width:0}
.odometer-history-panel .scoped-pagination{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.odometer-history-panel button{min-height:44px;white-space:normal}

/* Wave 6: the card history action follows the same minimum as panel actions. */
#mileageVehicleGrid [data-odometer-history]{min-height:44px}

/* Wave 8: scoped mobile targets; desktop and mutation semantics unchanged. */
@media (max-width:780px) {
  :is(#workflowControls-tripcenter,#workflowControls-reconciliation) {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
    width:100%;
    min-width:0;
    margin-bottom:16px;
  }
  :is(#workflowControls-tripcenter,#workflowControls-reconciliation) > label {
    display:grid;
    gap:6px;
    min-width:0;
    font-size:12px;
  }
  :is(#workflowControls-tripcenter,#workflowControls-reconciliation) > label:has([data-workflow-filter="search"]),
  #workflowControls-tripcenter > label:has([data-workflow-filter="scope"]) { grid-column:1/-1; }
  :is(#workflowControls-tripcenter,#workflowControls-reconciliation) :is(input,select),
  #calendarVehicleFilter {
    box-sizing:border-box;
    width:100%;
    max-width:100%;
    min-width:44px;
    min-height:44px;
    height:44px;
    padding:0 12px;
  }
  :is(#tripcenterView,#reconciliationView) :is(.scoped-pagination button,[data-scoped-retry],[data-toggle-reconciled]),
  #calendarView [data-scoped-retry],
  #calendarBookingDetail :is([data-calendar-day-page],[data-calendar-day-retry],.calendar-day-detail-booking),
  #calendarContent :is([data-calendar-date],[data-calendar-booking]) {
    min-width:44px;
    min-height:44px;
    max-width:100%;
  }
  #calendarContent :is([data-calendar-date],[data-calendar-booking]) {
    display:flex;
    align-items:center;
    width:100%;
    white-space:normal;
    overflow-wrap:anywhere;
  }
  #tripcenterView .trip-checklist-details > summary {
    box-sizing:border-box;
    min-height:44px;
    min-width:44px;
    align-items:center;
  }
  #tripcenterView label.task-check {
    box-sizing:border-box;
    min-height:44px;
    min-width:44px;
    width:100%;
    padding:8px;
    cursor:pointer;
  }
  #tripcenterView label.task-check input[data-trip-task] { flex:0 0 16px; }
  :is(#tripcenterView,#calendarView,#reconciliationView) :is(button,input,select,summary,label.task-check),
  #calendarBookingDetail :is(button,input,select) {
    scroll-margin-top:132px;
    scroll-margin-bottom:112px;
  }
  :is(#tripcenterView,#calendarView,#reconciliationView) :is(button,input,select,summary):focus-visible,
  #calendarBookingDetail button:focus-visible,
  #tripcenterView label.task-check:focus-within {
    outline:2px solid var(--text-primary);
    outline-offset:2px;
  }
}

/* Wave 9: trailing recovery content must scroll above fixed mobile navigation.
   The success profile body and desktop layout retain their existing spacing. */
@media (max-width:780px) {
  #vehicleProfileContent > [role="alert"]:has([data-profile-retry]) {
    box-sizing:border-box;
    min-width:0;
    padding:16px 16px calc(112px + env(safe-area-inset-bottom));
    overflow-wrap:anywhere;
  }
  #vehicleProfileContent [data-profile-retry] {
    box-sizing:border-box;
    min-height:44px;
    max-width:100%;
    scroll-margin-bottom:calc(112px + env(safe-area-inset-bottom));
  }
  #vehicleProfilePanel .vehicle-profile-close {
    min-width:44px;
    min-height:44px;
  }
  #vehicleProfileContent :is(button,a.vehicle-profile-link),
  #vehicleDecisionGrid .sold-vehicle-card a.vehicle-profile-link {
    min-width:44px;
    min-height:44px;
  }
}

/* Wave 9 V7: normal profile actions need the same mobile navigation clearance. */
@media (max-width:780px) {
  #vehicleProfileContent > .vehicle-profile-body {
    padding-bottom:calc(112px + env(safe-area-inset-bottom));
  }
  #vehicleProfileContent .vehicle-profile-actions :is(button,a) {
    scroll-margin-bottom:calc(112px + env(safe-area-inset-bottom));
  }
}

/* Wave 9 V8: preserve shared effective mobile target contract. */
@media (max-width:780px) {
  #appShell .workspace-header { grid-template-columns:44px minmax(0,1fr) 44px 48px!important; }
  #appShell .workspace-header > #experienceCommand {
    width:44px!important;min-width:44px!important;max-width:44px!important;
    height:44px!important;min-height:44px!important;padding:0!important;
  }
  #experienceCommandInput,
  :is(#performanceView,#decisionsView) [data-scoped-retry],
  #analyticalPager-decisions button { min-width:44px;min-height:44px; }
}
@media (max-width:430px) {
  #appShell .workspace-header { grid-template-columns:42px minmax(0,1fr) 44px 44px!important; }
}
@media (max-width:360px) {
  #appShell .workspace-header { grid-template-columns:40px minmax(0,1fr) 44px 42px!important; }
}

/* Wave 11: Import dialog owns pointer input above workspace chrome.
   Match the existing calendar-dialog layer; retain its own scrolling/layout. */
#importModal { z-index:10050; }
