/* layout.css — Estruturas globais e utilitários de exibição */

.scrollbar::-webkit-scrollbar { width: 6px; height: 6px; }
.scrollbar::-webkit-scrollbar-thumb { background: rgb(var(--slate-6, var(--lv-slate-6))); border-radius: 4px; }
.scrollbar::-webkit-scrollbar-thumb:hover { background: rgb(var(--slate-8, var(--lv-slate-8))); }
.scrollbar::-webkit-scrollbar-track { background: transparent; }

/* Utilitário para ocultar barras de rolagem mas manter funcionalidade */
.no-scrollbar {
  scrollbar-width: none; /* Firefox */
  -ms-overflow-style: none; /* IE 10+ */
}

.no-scrollbar::-webkit-scrollbar {
  display: none; /* Webkit */
}

.section {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.grid-auto-200 {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 16px;
}

/* Flex e Grids Utilitários Estritos */
.flex-wrap-gap {
  flex: 1;
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: center;
}

.flex-col-gap {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 12px;
  align-items: stretch;
}

.flex-row-between {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
}
.flex-row-between--top {
  align-items: flex-start;
}

.grid-cols-2 {
  flex: 1;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}

/* --- View Structure --- */
.view-container {
  display: flex;
  flex-direction: column;
  gap: 16px;
  position: relative;
  flex: 1;
  min-height: 0;
}

.view-content {
  display: flex;
  flex-direction: column;
  gap: 24px;
  flex: 1;
}

/* --- Components --- */
.avatar {
  border-radius: 50%;
  background: rgb(var(--slate-3, var(--lv-slate-3)));
  flex-shrink: 0;
  object-fit: cover;
}
.avatar--sm {
  width: 24px;
  height: 24px;
}
