/* Dashboard: use the same spacing, neutral surfaces and typography as other cards. */
.insumos-card { min-width: 0; }
.insumos-header { flex-wrap: wrap; }
.insumos-header select {
  max-width: 100%; min-height: 36px; padding: 7px 12px;
  font-size: 12px; color: #374151; border-color: #e5e7eb;
  background-color: #f9fafb;
}
[data-insumos-grade] > div { min-width: 0; }
.insumos-linha { padding: 10px 12px; border-radius: 8px; background: #f9fafb; }
.insumos-linha:hover { background: #f3f4f6; }
.insumos-valores { flex-wrap: wrap; margin-bottom: 8px; }
.insumos-valores > :first-child { font-size: 14px; min-width: 100px; }
.insumos-valores > :not(:first-child) { white-space: nowrap; }
[data-insumos-grade] table { table-layout: fixed; }
[data-insumos-grade] th:first-child { width: 54%; }
[data-insumos-grade] td:first-child { white-space: normal; overflow-wrap: anywhere; }
/* Reserve space so organizer buttons never cover a title, filter or indicator. */
[data-dash-marcado] { padding-top: 48px !important; }
[data-dash-ctrl] button { min-width: 32px; min-height: 32px; }
[data-dash-ctrl] button:focus-visible { outline: 2px solid #2563eb; outline-offset: 2px; }
@media (max-width: 639px) {
  .insumos-header select { width: 100%; margin-left: 0; }
}

/* Two stock-list columns on desktop; preserve the single mobile column. */
@media (min-width: 1024px) {
  .estoque-armazem-lista {
    display: grid; grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 6px 16px; align-content: start;
  }
  .estoque-armazem-lista.space-y-1\.5 > :not([hidden]) ~ :not([hidden]) { margin-top: 0; margin-bottom: 0; min-width: 0; }
}
