/* OnlyDrive responsive contracts — adaptive shell, not scaled desktop. */

@media (max-width: 1439px) {
  body.od-main-admin #section-drivers table :is(th, td):is(:nth-child(2), :nth-child(6), :nth-child(7), :nth-child(10)) { display: none; }
}

@media (max-width: 1279px) {
  .od-design-system :is(.kpis, .od-kpi-grid) { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.od-admin-app:not(.od-admin-mobile-open) .admin-shell { grid-template-columns: var(--od-sidebar-collapsed) minmax(0, 1fr); }
  body.od-admin-app:not(.od-admin-mobile-open) :is(.od-sidebar-wordmark, .od-nav-text, .od-nav-label, .od-admin-profile-text) { display: none; }
  body.od-admin-app:not(.od-admin-mobile-open) .admin-sections-navigation { padding-inline: var(--od-space-3); }
  body.od-admin-app:not(.od-admin-mobile-open) .admin-sections-tabs .tab { justify-content: center; padding-inline: 0; overflow: visible; }
  body.od-main-admin #section-dashboard .dashStage { grid-template-columns: minmax(15rem, .68fr) minmax(0, 1.32fr); }
  body.od-main-admin .od-recruiting-kpis { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 1023px) {
  body.od-admin-app .admin-workspace > .section { padding: clamp(1rem, 2.4vw, 1.5rem); }
  .od-page-header { align-items: flex-start; flex-direction: column; }
  .od-page-header__meta { justify-content: flex-start; }
  body.od-main-admin .split-panels { grid-template-columns: 1fr; }
  .od-funnel { grid-template-columns: 1fr; }
  .od-funnel__step:first-child { border-radius: var(--od-radius-md) var(--od-radius-md) 0 0; }
  .od-funnel__step:last-child { border-radius: 0 0 var(--od-radius-md) var(--od-radius-md); }
  .od-funnel__step + .od-funnel__step { border-top: 0; border-left: 1px solid var(--od-border-subtle); }
  .od-funnel__step::after { top: auto; right: 50%; bottom: -.25rem; transform: translateX(50%) rotate(135deg); }
  body.od-main-admin #section-dashboard .dashStage { grid-template-columns: 1fr; }
}

@media (max-width: 839px) {
  :root { --od-topbar-height: 4rem; }

  body.od-admin-app .admin-shell,
  body.od-admin-app:not(.od-admin-mobile-open) .admin-shell { display: block; width: 100vw; height: 100dvh; }

  body.od-admin-app .admin-main { width: 100vw; height: 100dvh; }

  body.od-admin-app .admin-sections-navigation {
    position: fixed;
    z-index: var(--od-z-drawer);
    inset: 0 auto 0 0;
    display: flex;
    width: min(19rem, calc(100vw - 3rem));
    height: 100dvh;
    padding: var(--od-space-4) var(--od-space-3);
    border-right: 1px solid var(--od-border-default);
    box-shadow: var(--od-shadow-lg);
    transform: translateX(-105%);
    transition: transform var(--od-duration-medium) var(--od-ease);
  }

  body.od-admin-mobile-open .admin-sections-navigation { transform: translateX(0); }
  body.od-admin-app :is(.od-sidebar-wordmark, .od-nav-text, .od-nav-label, .od-admin-profile-text) { display: block; }
  body.od-admin-app .admin-sections-tabs .tab { justify-content: flex-start; padding-inline: var(--od-space-3); overflow: hidden; }
  body.od-admin-app .od-sidebar-collapse { display: none; }
  body.od-admin-app .od-nav-toggle { display: inline-flex; }

  body.od-admin-app .od-mobile-scrim {
    position: fixed;
    z-index: calc(var(--od-z-drawer) - 1);
    inset: 0;
    display: block;
    border: 0;
    background: rgba(1,5,8,.72);
    opacity: 0;
    pointer-events: none;
    transition: opacity var(--od-duration-medium) ease;
  }
  body.od-admin-mobile-open .od-mobile-scrim { opacity: 1; pointer-events: auto; }

  body.od-admin-app .admin-header {
    grid-template-columns: auto minmax(0, 1fr) auto;
    min-height: var(--od-topbar-height);
    padding-inline: var(--od-space-3);
  }
  body.od-admin-app .admin-header .headerRight { min-width: 0; }
  body.od-admin-app .admin-header .od-button:not(.od-nav-toggle):not([data-theme-toggle]) { display: none; }
  .od-page-context__eyebrow { display: none; }
  .od-page-context__title { font-size: var(--od-text-md); }

  body.od-admin-app #notice { top: calc(var(--od-topbar-height) + var(--od-space-2)); right: var(--od-space-3); width: calc(100% - var(--od-space-6)); }
  body.od-admin-app .admin-workspace > .section { padding: var(--od-space-4) var(--od-space-3); }
  body.od-admin-app .admin-workspace > #section-map.active { padding: 0; }
  .od-page-header { margin-bottom: var(--od-space-5); }
  .od-page-header h1 { font-size: clamp(1.7rem, 8vw, 2.15rem); }
  body.od-main-admin .od-recruiting-kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); }

  /* Tables become labelled operational records on compact screens. */
  .od-design-system .od-smart-table { min-width: 0; white-space: normal; }
  .od-design-system .od-smart-table thead { display: none; }
  .od-design-system .od-smart-table tbody { display: grid; gap: var(--od-space-3); padding: var(--od-space-3); }
  .od-design-system .od-smart-table tbody tr { display: grid; grid-template-columns: 1fr 1fr; overflow: hidden; border: 1px solid var(--od-border-subtle); border-radius: var(--od-radius-md); background: var(--od-surface-1); }
  .od-design-system .od-smart-table tbody td { display: grid; height: auto; min-height: 3.5rem; align-content: center; gap: .2rem; padding: var(--od-space-3); overflow-wrap: anywhere; border-right: 1px solid var(--od-border-subtle); }
  .od-design-system .od-smart-table tbody td::before { color: var(--od-text-muted); content: attr(data-label); font-size: .625rem; font-weight: 650; }
  .od-design-system .od-smart-table tbody td:first-child,
  .od-design-system .od-smart-table tbody td:last-child { grid-column: 1 / -1; border-right: 0; }
  .od-design-system .od-smart-table tbody td:nth-child(even) { border-right: 0; }

  body.od-platform > .wrap,
  body.od-platform #driverMain { padding-inline: var(--od-space-3); }
  body.od-customer.od-platform .tabs,
  body.od-driver-operations.od-platform .driverControlBar { top: calc(var(--od-topbar-height) + .25rem); width: 100%; }
  body.od-login.od-platform .scene { display: grid; grid-template-columns: 1fr; }
  body.od-login.od-platform .visual { display: none; }
  body.od-login.od-platform .wrap { min-height: 100dvh; padding: var(--od-space-4); }
  body.od-login.od-platform .login-shell { width: 100%; max-width: 30rem; }
  body.od-customer-order.od-platform .content,
  body.od-customer-order.od-platform .wizard-footer { padding: var(--od-space-3); }
}

@media (max-width: 479px) {
  .od-design-system :is(.kpis, .od-kpi-grid),
  body.od-main-admin .od-recruiting-kpis { grid-template-columns: 1fr; }
  body.od-admin-app :is(.card-head, .panel-head) { align-items: stretch; flex-direction: column; padding: var(--od-space-4); }
  body.od-admin-app .card-body,
  body.od-main-admin .od-recruiting-section .panel { padding: var(--od-space-4); }
  body.od-main-admin .od-recruiting-section .panel > .panel-head { margin: calc(var(--od-space-4) * -1) calc(var(--od-space-4) * -1) var(--od-space-4); }
  .od-candidate-hero { align-items: flex-start; flex-direction: column; }
  .od-design-system .od-smart-table tbody tr { grid-template-columns: 1fr; }
  .od-design-system .od-smart-table tbody td { grid-column: 1; border-right: 0; }
  .od-design-system :is(.filters, .od-toolbar) > :is(input, select, button, .button) { width: 100%; flex-basis: 100%; }
  [data-toast-host] { right: var(--od-space-3); bottom: var(--od-space-3); width: calc(100vw - 1.5rem); }
}
