/* Universal 2-column layout */
.aidc-layout {
  --col-left: 300px;
  --col-left-collapsed: 64px;
  --gap: 8px;
  --page-padding: 8px;

  width: 100%;
  padding-left: var(--page-padding);
  padding-right: var(--page-padding);
  min-height: 0;
  flex: 1 1 auto;
}

.aidc-layout--2col {
  display: grid !important;
  grid-template-columns: var(--col-left) minmax(0, 1fr);
  grid-auto-rows: minmax(0, 1fr);
  gap: var(--gap);
  align-items: stretch;
  margin-top: 12px;
  height: 100%;
  min-height: 0;
}

.aidc-layout--2col.tree-collapsed {
  grid-template-columns: var(--col-left-collapsed) minmax(0, 1fr);
}

.aidc-layout--2col > * {
  min-width: 0;
  min-height: 0;
}
.aidc-layout--2col > .panel {
  height: 100%;
}

.aidc-col--left   { grid-column: 1; }
.aidc-col--center { grid-column: 2; }

@media (max-width: 820px) {
  .aidc-layout--2col,
  .aidc-layout--2col.tree-collapsed {
    grid-template-columns: 1fr;
  }
  .aidc-col--left,
  .aidc-col--center {
    grid-column: 1;
  }
}
