/**
 * Center dashboard tab content in the main column (portal, admin, driver).
 * Keeps boards and panels from hugging the left edge on wide viewports.
 */

:root {
  --dashboard-content-max: 1120px;
}

.main > .topbar,
.main > .view,
.main > .admin-access-banner,
.main > .test-mode-banner,
.main > .business-verification-status-banner {
  width: 100%;
  max-width: var(--dashboard-content-max);
  margin-inline: auto;
  box-sizing: border-box;
}

/* Business portal: keep every tab body centered in the content column */
body.business-account.portal-app .main > .view {
  display: flex;
  flex-direction: column;
  align-items: center;
}

body.business-account.portal-app .main > .view > * {
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}

body.business-account.portal-app .catalogue-manage,
body.business-account.portal-app .applications-shell,
body.business-account.portal-app .integrations-shell,
body.business-account.portal-app .integrations-locked,
body.business-account.portal-app .print-shell,
body.business-account.portal-app .settings-layout,
body.business-account.portal-app .wallet-shell,
body.business-account.portal-app .sales-board-wrap,
body.business-account.portal-app .table-wrap,
body.business-account.portal-app .deliveries-new-wrap {
  width: 100%;
  margin-inline: auto;
}

/* Nested constrained panels sit in the middle of the column */
.main .settings-layout,
.main .account-layout,
.main .panel-form,
.main .info-box,
.main .integrations-layout,
.main .integrations-shell,
.main .integrations-locked,
.main .applications-shell,
.main .print-shell,
.main .wallet-shell,
.main .trip-form,
.main .verification-banner,
.main .verification-checklist,
.main .verification-form,
.main .status-card,
.main .card-list,
.main .trip-panel,
.main .deliveries-new-wrap .trip-form {
  margin-inline: auto;
}

/* Mode / board tab strips with a fixed max-width */
.main .account-type-tabs {
  margin-inline: auto;
}

/* App catalogues: center incomplete final rows (admin picker grid) */
.app-access-picker-grid {
  justify-content: center;
}

/* Full-bleed live trip / navigation maps stay edge-to-edge */
.app.has-live-trip .main > .view,
.app.has-live-trip .main > .topbar,
body.driver-trip-active .main > .view,
body.driver-trip-active .main > .topbar {
  max-width: none;
}

body.business-account.portal-app.app.has-live-trip .main > .view {
  align-items: stretch;
}
