/*
 * Shared layout shells for split views and filter/table pages.
 *
 * Sections:
 * 1) split and card-grid patterns, 2) filter sidebar layout contract,
 * 3) responsive one-column fallback.
 */

/* Generic split layouts and card grid primitives. */
/* Shared responsive layout shells for split views and card grids. */
.ui-split-layout {
  display: flex;
  gap: var(--space-lg);
  justify-content: flex-end;
}

.ui-split-layout--hero {
  grid-template-columns: minmax(0, 1.15fr) minmax(20rem, 26.25rem);
  gap: 2rem;
  align-items: center;
}

.ui-split-layout--sidebar {
  grid-template-columns: minmax(16.25rem, 20rem) minmax(0, 1fr);
}

.ui-card-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(17.5rem, 1fr));
  gap: var(--space-lg);
}

/* Shared table + filter sidebar contract. */
.workspace-filter-layout {
  display: grid;
  grid-template-columns: minmax(15.5rem, 17.5rem) minmax(0, 1fr);
  gap: var(--space-xl);
  align-items: start;
  min-width: 0;
}

.workspace-filter-layout.is-filters-collapsed {
  grid-template-columns: minmax(0, 1fr);
  gap: var(--space-md);
}

.workspace-filter-layout__content {
  min-width: 0;
}

.workspace-filter-layout__content > .ui-page-shell {
  max-width: none;
  margin: 0;
}

/* Collapse split layouts into one column on mobile widths. */
@media (max-width: 56.25rem) {
  .ui-split-layout--hero,
  .ui-split-layout--sidebar,
  .workspace-filter-layout,
  .workspace-filter-layout.is-filters-collapsed {
    grid-template-columns: 1fr;
  }
}
