.page-definition-grid {
  display: grid;
  grid-template-columns: repeat(var(--page-grid-columns, 12), minmax(0, 1fr));
  gap: 1rem;
}

.page-definition-slot {
  grid-column: span var(--page-slot-span, var(--page-grid-columns, 12));
  min-width: 0;
}

.page-definition-slot > :first-child { margin-top: 0; }
.page-definition-slot > :last-child { margin-bottom: 0; }

.page-definition-slot--empty,
.page-definition-widget-unavailable,
.page-definition-slot-placeholder {
  border: 1px dashed #a9b5c5;
  border-radius: 0.75rem;
  padding: 1rem;
  color: #58677a;
  background: #f7f9fc;
}

.page-definition-runtime[data-page-id="PAGE-HOUSEHOLD-OVERVIEW"] .page-definition-grid {
  align-items: start;
}

.page-definition-runtime[data-page-id="PAGE-HOUSEHOLD-OVERVIEW"] [data-slot-id="Household Header"],
.page-definition-runtime[data-page-id="PAGE-HOUSEHOLD-OVERVIEW"] [data-slot-id="Snapshot Band"],
.page-definition-runtime[data-page-id="PAGE-HOUSEHOLD-OVERVIEW"] [data-slot-id="Workspace Footer"] {
  grid-column: 1 / -1;
}

.page-definition-runtime[data-page-id="PAGE-HOUSEHOLD-OVERVIEW"] [data-slot-id="Snapshot Band"] > .household-overview-row,
.page-definition-runtime[data-page-id="PAGE-HOUSEHOLD-OVERVIEW"] [data-slot-id="Guided Review Canvas"] > .household-overview-row {
  height: auto;
}

.page-definition-runtime[data-page-id="PAGE-HOUSEHOLD-OVERVIEW"] [data-slot-id="Evidence and Activity Rail"] {
  display: grid;
  gap: 1rem;
}

/*
 * PAGE-ACCOUNTS-MIGRATION-PROVISIONAL reuses the Workspace_L02 "Split
 * Workspace" layout (built for Developer Platform / Trade Review), but its
 * widget content -- the metric summary grid, the two-column performance/
 * income panels, holdings, etc. -- is the original full-width account page,
 * which already has its own internal grids. Squeezed into Workspace_L02's
 * ~1/3-page Main Left / Main Center / Inspector columns, those inner grids
 * get so narrow that placeholder text like "Not available yet" overflows
 * its cell and visually collides with neighboring content. Force these
 * slots back to full width, same pattern as PAGE-HOUSEHOLD-OVERVIEW above.
 */
.page-definition-runtime[data-page-id="PAGE-ACCOUNTS-MIGRATION-PROVISIONAL"] [data-slot-id="Main Left"],
.page-definition-runtime[data-page-id="PAGE-ACCOUNTS-MIGRATION-PROVISIONAL"] [data-slot-id="Main Center"],
.page-definition-runtime[data-page-id="PAGE-ACCOUNTS-MIGRATION-PROVISIONAL"] [data-slot-id="Inspector"] {
  grid-column: 1 / -1;
}

@media (max-width: 1024px) {
  .page-definition-slot { grid-column: span calc(var(--page-grid-columns, 12) / 2); }
  .page-definition-slot[style*="60"] { grid-column: 1 / -1; }
  .page-definition-runtime[data-page-id="PAGE-HOUSEHOLD-OVERVIEW"] .page-definition-slot {
    grid-column: 1 / -1;
  }
}

@media (max-width: 700px) {
  .page-definition-grid { grid-template-columns: 1fr; }
  .page-definition-slot { grid-column: 1; }
}
