/* Keep sections stacked; dashboard-card's shared span must not create implicit columns. */
.sge-dashboard-canvas {
  grid-template-columns: minmax(0, 1fr);
}
.sge-dashboard-canvas > .sge-filters,
.sge-dashboard-canvas > .bi-metrics,
.sge-dashboard-canvas > .dashboard-card {
  grid-column: 1 / -1;
  min-width: 0;
  width: 100%;
}
.sge-dashboard-canvas .bi-metrics > div {
  min-width: 0;
}
.sge-filters { grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: 10px; margin: 0 0 16px; }
.sge-filters label { font-size: .78rem; font-weight: 400; }
.sge-dashboard-canvas .bi-metrics { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.sge-filters input, .sge-filters select { width: 100%; min-width: 0; }
.sge-table { min-width: 1800px; }
.sge-table th, .sge-table td { vertical-align: top; }
.sge-table th:first-child, .sge-table td:first-child { min-width: 240px; }
.sge-table th:nth-child(3), .sge-table td:nth-child(3), .sge-table th:nth-child(9), .sge-table td:nth-child(9) { min-width: 220px; }
.sge-table td:nth-child(10), .sge-table td:nth-child(11), .sge-table td:last-child { white-space: nowrap; }
.sge-pagination { display: flex; flex-wrap: wrap; gap: 16px; align-items: center; margin-top: 20px; }
#sgeUpdatedAt { color: var(--muted); font-size: .9rem; }
@media (max-width: 900px) { .sge-dashboard-canvas .bi-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 600px) { .sge-filters { grid-template-columns: minmax(0, 1fr); } }
