/* ==========================================================================
   ERTEL — Módulo Programação (Central de Programação)
   ========================================================================== */

.ertel-prog-coluna-titulo {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: var(--ertel-text-sm);
  font-weight: var(--ertel-weight-semibold);
  margin-bottom: var(--ertel-space-3);
}

.ertel-prog-shell {
  display: grid;
  grid-template-columns: 280px 1fr 300px;
  gap: var(--ertel-space-4);
  align-items: start;
}
.ertel-prog-calendario {
  min-width: 0; /* coluna central pode ter dias/cards lado a lado -- sem isso, cresceria em vez de rolar */
}

/* -- Layout "Foco no Calendário" (pedido explícito: mais espaço pro calendário,
   indicadores e Equipes viram painéis retráteis) -----------------------------------------
   Padrão continua com 3 colunas fixas (regra `.ertel-prog-shell` acima). Este
   modificador só entra quando `layoutFoco` está ligado (`central-view.js`). */
.ertel-prog-shell--foco {
  grid-template-columns: 1fr 300px;
}
.ertel-prog-coluna-principal {
  display: flex;
  flex-direction: column;
  gap: var(--ertel-space-4);
  min-width: 0;
}
.ertel-prog-retratil {
  background: var(--ertel-surface);
  border: 1px solid var(--ertel-border);
  border-radius: var(--ertel-radius-lg);
}
.ertel-prog-retratil__resumo {
  cursor: pointer;
  padding: var(--ertel-space-3) var(--ertel-space-4);
  font-size: var(--ertel-text-sm);
  font-weight: var(--ertel-weight-semibold);
  list-style: none;
}
.ertel-prog-retratil__resumo::-webkit-details-marker { display: none; }
.ertel-prog-retratil[open] .ertel-prog-retratil__resumo {
  border-bottom: 1px solid var(--ertel-border);
}
/* Resumo do painel "Carteira de Horas e Colaboradores" ganha o controle de troca
   de turno (◀ Turno ▶) na mesma linha do título -- antes esse controle vivia
   como uma linha própria, centralizada, dentro do corpo do painel, sobrando
   bastante espaço vazio nas laterais numa barra de largura cheia (layout Foco).
   Título à esquerda, controle à direita, tudo numa linha só. */
.ertel-prog-retratil__resumo--equipes {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--ertel-space-3);
}
/* Variante compacta do carrossel, pra caber dentro da barra de resumo (sem a
   borda/respiro vertical que fazia sentido como bloco próprio). */
.ertel-prog-turno-carrossel--compacto {
  padding: 0;
  border-bottom: none;
  margin-bottom: 0;
  flex-shrink: 0;
}
/* Dentro do painel retrátil, o Painel de Equipes vira uma barra HORIZONTAL (não
   mais a coluna fixa/sticky de sempre) -- os cards viram um grid que aproveita a
   largura toda, em vez de empilhados numa coluna estreita. */
.ertel-prog-retratil .ertel-prog-equipes {
  background: none;
  border: none;
  border-radius: 0;
  max-height: 46vh;
  position: static;
  top: auto;
}
.ertel-prog-retratil .ertel-prog-equipes__lista {
  flex-direction: row;
  flex-wrap: wrap;
}
.ertel-prog-retratil .ertel-colab-equipe-card {
  width: 280px;
  flex-shrink: 0;
}

/* -- Painel de Equipes ------------------------------------------------------------------ */

.ertel-prog-equipes {
  background: var(--ertel-surface);
  border: 1px solid var(--ertel-border);
  border-radius: var(--ertel-radius-lg);
  padding: var(--ertel-space-4);
  max-height: 78vh;
  overflow-y: auto;
  position: sticky;
  top: var(--ertel-space-4);
}
.ertel-prog-equipes__lista {
  display: flex;
  flex-direction: column;
  gap: var(--ertel-space-3);
}

.ertel-colab-equipe-card {
  padding: var(--ertel-space-3);
  background: var(--ertel-surface-alt);
  border-radius: var(--ertel-radius-md);
}
.ertel-colab-equipe-card__topo {
  display: flex;
  align-items: center;
  gap: var(--ertel-space-2);
  margin-bottom: var(--ertel-space-2);
}
.ertel-colab-equipe-card__avatar {
  flex-shrink: 0;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: var(--ertel-primary);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
  font-weight: 700;
  overflow: hidden;
}
.ertel-colab-equipe-card__avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.ertel-colab-equipe-card__info {
  flex: 1;
  min-width: 0;
}
.ertel-colab-equipe-card__nome {
  font-size: var(--ertel-text-sm);
  font-weight: var(--ertel-weight-semibold);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.ertel-colab-equipe-card__sub {
  font-size: 10.5px;
  color: var(--ertel-muted);
}
.ertel-colab-equipe-card__ocupacao {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 4px;
}
.ertel-colab-equipe-card__ocupacao-barra {
  flex: 1;
  height: 7px;
  background: var(--ertel-border);
  border-radius: 999px;
  overflow: hidden;
  position: relative;
}
.ertel-colab-equipe-card__ocupacao-realizado {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  background: var(--ertel-success);
  transition: width var(--ertel-transition-base);
}
.ertel-colab-equipe-card__ocupacao-preenchido {
  position: absolute;
  top: 0;
  height: 100%;
  background: var(--ertel-primary);
  transition: width var(--ertel-transition-base), left var(--ertel-transition-base);
}
.ertel-colab-equipe-card__ocupacao-preenchido[data-sobrecarga="true"] {
  background: var(--ertel-crit-a);
}
.ertel-colab-equipe-card__horas {
  display: flex;
  justify-content: space-between;
  font-size: 10.5px;
  color: var(--ertel-muted);
}
.ertel-colab-equipe-card__certs {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  margin-top: var(--ertel-space-2);
}
.ertel-colab-equipe-card__certs span {
  font-size: 9.5px;
  padding: 1px 6px;
  background: var(--ertel-surface);
  border-radius: 999px;
  color: var(--ertel-ink-soft);
}

/* -- Calendário --------------------------------------------------------------------- */

.ertel-prog-calendario__nav {
  display: flex;
  align-items: center;
  gap: var(--ertel-space-3);
  margin-bottom: var(--ertel-space-3);
  flex-wrap: wrap;
}
.ertel-prog-calendario__nav .ertel-btn {
  width: auto;
}
.ertel-prog-calendario__periodo {
  font-weight: var(--ertel-weight-semibold);
  font-size: var(--ertel-text-sm);
  font-family: var(--ertel-font-mono);
}

.ertel-prog-grid {
  display: grid;
  border: 1px solid var(--ertel-border);
  border-radius: var(--ertel-radius-lg);
  overflow: hidden;
  background: var(--ertel-border);
  gap: 1px;
}

.ertel-prog-grid__canto,
.ertel-prog-grid__dia-header,
.ertel-prog-grid__colaborador,
.ertel-prog-grid__cell {
  background: var(--ertel-surface);
}

.ertel-prog-grid__dia-header {
  padding: 8px 10px;
  display: flex;
  flex-direction: column;
  align-items: center;
  font-size: 11px;
  color: var(--ertel-muted);
}
.ertel-prog-grid__dia-header span:first-child {
  font-weight: var(--ertel-weight-semibold);
  color: var(--ertel-ink);
}
.ertel-prog-grid__dia-header[data-hoje="true"] {
  background: var(--ertel-primary-soft);
}

.ertel-prog-grid__colaborador {
  padding: 8px 10px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  font-size: 12px;
  font-weight: var(--ertel-weight-medium);
}
.ertel-prog-grid__colaborador-sub {
  font-size: 10px;
  color: var(--ertel-muted);
  font-weight: 400;
}

.ertel-prog-grid__cell {
  min-height: 64px;
  padding: 4px;
  display: flex;
  flex-direction: column;
  gap: 4px;
  transition: background var(--ertel-transition-fast);
}
.ertel-prog-grid__cell.ertel-drop-hover {
  background: var(--ertel-primary-soft);
  outline: 2px dashed var(--ertel-primary);
  outline-offset: -2px;
}

/* -- Mini-card de atribuição (dentro da célula) ------------------------------------------ */

.ertel-atribuicao-mini-card {
  background: var(--ertel-surface-alt);
  border-left: 3px solid var(--ertel-border-strong);
  border-radius: 4px;
  padding: 4px 6px;
  font-size: 10.5px;
  cursor: grab;
}
.ertel-atribuicao-mini-card:active {
  cursor: grabbing;
}
.ertel-atribuicao-mini-card.ertel-dragging {
  opacity: 0.4;
}
/* -- Versão compacta: número de OS, tempo e urgência numa linha só — o título fica só no
   title="" (tooltip ao passar o mouse), pra não tomar espaço permanente na grade -------- */
.ertel-atribuicao-mini-card--compacto {
  display: flex;
  align-items: center;
  gap: 5px;
  white-space: nowrap;
}
.ertel-atribuicao-mini-card--executada {
  cursor: default;
  background: var(--ertel-success-bg, #DCFCE7);
  opacity: 0.85;
}
.ertel-atribuicao-mini-card__check {
  color: var(--ertel-success);
  font-weight: 700;
}
.ertel-atribuicao-mini-card--compacto .ertel-mono {
  font-weight: 700;
  overflow: hidden;
  text-overflow: ellipsis;
}
.ertel-atribuicao-mini-card__prioridade {
  font-weight: 700;
  font-size: 9px;
}
.ertel-atribuicao-mini-card__remover {
  border: none;
  background: none;
  color: var(--ertel-muted);
  cursor: pointer;
  padding: 0 2px;
  line-height: 1;
  margin-left: auto;
}
.ertel-atribuicao-mini-card__remover:hover {
  color: var(--ertel-crit-a);
}

/* -- Banco de OS ------------------------------------------------------------------------ */

.ertel-prog-banco {
  background: var(--ertel-surface);
  border: 1px solid var(--ertel-border);
  border-radius: var(--ertel-radius-lg);
  padding: var(--ertel-space-4);
  max-height: 78vh;
  overflow-y: auto;
  position: sticky;
  top: var(--ertel-space-4);
}
.ertel-prog-banco__lista {
  display: flex;
  flex-direction: column;
  gap: var(--ertel-space-2);
}

.ertel-os-banco-card {
  background: var(--ertel-surface-alt);
  border-left: 3px solid var(--ertel-border-strong);
  border-radius: var(--ertel-radius-sm);
  padding: var(--ertel-space-2) var(--ertel-space-3);
  font-size: 11.5px;
  cursor: grab;
}
.ertel-os-banco-card:active {
  cursor: grabbing;
}
.ertel-os-banco-card.ertel-dragging {
  opacity: 0.4;
}
.ertel-os-banco-card__topo {
  display: flex;
  justify-content: space-between;
  color: var(--ertel-muted);
  margin-bottom: 2px;
}
.ertel-os-banco-card__topo-badges {
  display: flex;
  align-items: center;
  gap: 4px;
  flex-wrap: wrap;
  justify-content: flex-end;
}
.ertel-os-banco-card__titulo {
  font-weight: var(--ertel-weight-medium);
  color: var(--ertel-ink);
  margin-bottom: 4px;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
.ertel-os-banco-card__meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  color: var(--ertel-muted);
  margin-bottom: 4px;
}
.ertel-os-banco-card__origem {
  font-weight: var(--ertel-weight-semibold);
}
.ertel-os-banco-card__rodape {
  display: flex;
  justify-content: space-between;
  color: var(--ertel-muted);
  font-size: 10.5px;
}

/* -- Painel de detalhes da OS (dentro do modal) ------------------------------------------- */

.ertel-os-detalhes__grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
  gap: var(--ertel-space-3);
  font-size: var(--ertel-text-sm);
}
.ertel-os-detalhes__grid > div {
  display: flex;
  flex-direction: column;
}
.ertel-os-detalhes__grid strong {
  font-size: 10.5px;
  text-transform: uppercase;
  color: var(--ertel-muted);
  font-weight: 600;
}
.ertel-os-detalhes__lista {
  margin: 0;
  padding-left: 18px;
  font-size: var(--ertel-text-sm);
}
.ertel-os-detalhes__lista li {
  margin-bottom: 2px;
}

@media (max-width: 1100px) {
  .ertel-prog-shell {
    grid-template-columns: 1fr;
  }
  .ertel-prog-equipes,
  .ertel-prog-banco {
    position: static;
    max-height: none;
  }
  .ertel-prog-grid {
    overflow-x: auto;
  }
}

/* -- Visão Dia (colunas por colaborador) -------------------------------------------------- */

.ertel-prog-grid-dia {
  overflow-x: auto;
  padding-bottom: var(--ertel-space-2);
  background: var(--ertel-surface);
  border: 1px solid var(--ertel-border);
  border-radius: var(--ertel-radius-lg);
}
.ertel-prog-grid-dia__regua-h {
  display: flex;
  position: sticky;
  top: 0;
  background: var(--ertel-surface-alt);
  border-bottom: 1px solid var(--ertel-border);
  z-index: 1;
}
.ertel-prog-grid-dia__regua-h span {
  flex-shrink: 0;
  font-size: 10px;
  color: var(--ertel-muted);
  text-align: center;
  padding: 8px 0;
  border-left: 1px dashed var(--ertel-border);
}
.ertel-prog-grid-dia__linha {
  display: flex;
  border-bottom: 1px solid var(--ertel-border);
}
.ertel-prog-grid-dia__linha:last-child {
  border-bottom: none;
}
.ertel-prog-grid-dia__nome {
  flex-shrink: 0;
  position: sticky;
  left: 0;
  background: var(--ertel-surface);
  padding: 10px 12px;
  font-size: var(--ertel-text-sm);
  font-weight: var(--ertel-weight-semibold);
  display: flex;
  flex-direction: column;
  justify-content: center;
  border-right: 1px solid var(--ertel-border);
  z-index: 1;
}
.ertel-prog-grid-dia__nome span {
  font-size: 10.5px;
  font-weight: 400;
  color: var(--ertel-muted);
}
.ertel-prog-grid-dia__cell {
  position: relative;
  flex-shrink: 0;
  min-height: 48px;
  transition: background var(--ertel-transition-fast);
}
.ertel-prog-grid-dia__cell.ertel-drop-hover {
  background: var(--ertel-primary-soft);
  outline: 2px dashed var(--ertel-primary);
  outline-offset: -2px;
}
.ertel-prog-grid-dia__faixa-almoco {
  position: absolute;
  top: 0;
  bottom: 0;
  background: repeating-linear-gradient(45deg, var(--ertel-warning-bg, #FEF3C7), var(--ertel-warning-bg, #FEF3C7) 6px, transparent 6px, transparent 12px);
  border-left: 1px dashed var(--ertel-warning);
  border-right: 1px dashed var(--ertel-warning);
  pointer-events: none;
  z-index: 0;
}
/* -- Ícone de pausa no vão entre os 2 pedaços de um card que atravessa o Intervalo
   de Refeição — deixa claro que a atividade parou e retomou (ver
   `atividadeCruzaAlmoco()`/CLAUDE.md). ------------------------------------------------ */
.ertel-prog-grid-dia__pausa-icone {
  position: absolute;
  top: 2px;
  bottom: 2px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 13px;
  color: var(--ertel-muted);
  pointer-events: none;
}

/* -- Visão Mês (visão geral, sem drag-and-drop) -------------------------------------------- */

.ertel-prog-grid-mes {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  gap: 1px;
  background: var(--ertel-border);
  border: 1px solid var(--ertel-border);
  border-radius: var(--ertel-radius-lg);
  overflow: hidden;
}
.ertel-prog-grid-mes__dia-header {
  background: var(--ertel-surface-alt);
  padding: 8px;
  text-align: center;
  font-size: 11px;
  font-weight: var(--ertel-weight-semibold);
  color: var(--ertel-muted);
}
.ertel-prog-grid-mes__cell {
  background: var(--ertel-surface);
  border: none;
  min-height: 76px;
  padding: 6px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 4px;
  cursor: pointer;
  transition: background var(--ertel-transition-fast);
}
.ertel-prog-grid-mes__cell:hover {
  background: var(--ertel-primary-soft);
}
.ertel-prog-grid-mes__cell[data-fora-do-mes="true"] {
  opacity: 0.35;
}
.ertel-prog-grid-mes__cell[data-hoje="true"] {
  background: var(--ertel-primary-soft);
}
.ertel-prog-grid-mes__numero {
  font-family: var(--ertel-font-mono);
  font-size: 12px;
  font-weight: var(--ertel-weight-semibold);
}
.ertel-prog-grid-mes__contagem {
  font-size: 10px;
  color: var(--ertel-primary);
  font-weight: 600;
}
.ertel-prog-grid-mes__pontos {
  display: flex;
  gap: 3px;
  flex-wrap: wrap;
}
.ertel-prog-grid-mes__ponto {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #94A3B8;
}

/* -- Sugestões de Agrupamento --------------------------------------------------------- */

.ertel-agrupamento-lista {
  display: flex;
  flex-direction: column;
  gap: var(--ertel-space-3);
}
.ertel-agrupamento-card {
  padding: var(--ertel-space-3);
  background: var(--ertel-surface-alt);
  border-radius: var(--ertel-radius-md);
  border-left: 3px solid var(--ertel-primary);
}
.ertel-agrupamento-card__topo {
  display: flex;
  align-items: baseline;
  gap: var(--ertel-space-2);
  flex-wrap: wrap;
  margin-bottom: var(--ertel-space-2);
}
.ertel-agrupamento-card__motivo {
  font-weight: var(--ertel-weight-semibold);
  font-size: var(--ertel-text-sm);
  color: var(--ertel-primary);
}
.ertel-agrupamento-card__detalhe {
  font-size: var(--ertel-text-xs);
  color: var(--ertel-muted);
}
.ertel-agrupamento-card__os-lista {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.ertel-agrupamento-card__os {
  display: flex;
  align-items: center;
  gap: var(--ertel-space-2);
  padding: 6px 10px;
  background: var(--ertel-surface);
  border: none;
  border-radius: var(--ertel-radius-sm);
  font-size: var(--ertel-text-sm);
  text-align: left;
  cursor: pointer;
  width: 100%;
}
.ertel-agrupamento-card__os:hover {
  box-shadow: var(--ertel-shadow-sm);
}

/* -- Botão de Gantt no card do colaborador -------------------------------------------------- */

.ertel-colab-equipe-card__gantt-btn {
  border: none;
  background: none;
  cursor: pointer;
  font-size: 16px;
  padding: 4px 6px;
  border-radius: var(--ertel-radius-sm);
  line-height: 1;
}
.ertel-colab-equipe-card__gantt-btn:hover {
  background: var(--ertel-surface-alt);
}

/* -- Gantt de atividades por colaborador (visão de um dia) ---------------------------------- */

.ertel-gantt-wrapper {
  overflow-x: auto;
}
.ertel-gantt-nav-dia {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding-bottom: 8px;
  border-bottom: 1px solid var(--ertel-border);
  margin-bottom: 8px;
}
.ertel-gantt-nav-dia__label {
  font-size: var(--ertel-text-sm);
  font-weight: 700;
}
.ertel-gantt-nav-dia__contador {
  font-size: 10px;
  font-weight: 400;
  color: var(--ertel-muted);
}
.ertel-gantt-aviso-config {
  font-size: var(--ertel-text-xs);
  color: var(--ertel-warning);
  margin-bottom: 8px;
}
.ertel-gantt-regua {
  display: flex;
  font-size: 10px;
  color: var(--ertel-muted);
  font-weight: 700;
  border-bottom: 1px solid var(--ertel-border);
  padding-bottom: 4px;
}
.ertel-gantt-regua span {
  flex-shrink: 0;
  text-align: center;
}
.ertel-gantt-corpo {
  min-width: 200px;
}
.ertel-gantt-faixa-almoco {
  position: absolute;
  top: 0;
  bottom: 0;
  background: repeating-linear-gradient(45deg, var(--ertel-surface-alt), var(--ertel-surface-alt) 6px, transparent 6px, transparent 12px);
  border-left: 1px dashed var(--ertel-border);
  border-right: 1px dashed var(--ertel-border);
  pointer-events: none;
}
.ertel-gantt-linha {
  position: absolute;
  left: 0;
  right: 0;
  height: 40px;
  display: flex;
  align-items: center;
  border-bottom: 1px solid var(--ertel-border);
}
.ertel-gantt-rotulo {
  flex-shrink: 0;
  font-size: var(--ertel-text-xs);
  padding-right: 8px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.ertel-gantt-barra {
  position: absolute;
  height: 22px;
  border-radius: var(--ertel-radius-sm);
  background: var(--ertel-primary);
  cursor: default;
  display: flex;
  align-items: center;
  overflow: hidden;
}
.ertel-gantt-barra__horario {
  font-size: 9px;
  color: #fff;
  padding: 0 4px;
  white-space: nowrap;
}
.ertel-gantt-barra--conflito {
  background: var(--ertel-crit-a);
  box-shadow: 0 0 0 2px rgba(220, 38, 38, 0.25);
}
/* -- Ícone de pausa entre os 2 pedaços da barra, quando a atividade atravessa o
   Intervalo de Refeição — deixa explícito que a execução parou e retomou, em vez de
   um bloco sólido contínuo (ver `atividadeCruzaAlmoco()`/CLAUDE.md). ------------------ */
.ertel-gantt-pausa-icone {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  text-align: center;
  font-size: 13px;
  color: var(--ertel-muted);
  pointer-events: none;
}
.ertel-gantt-aviso-dependencia {
  position: absolute;
  font-size: 10px;
  color: var(--ertel-muted);
  white-space: nowrap;
  max-width: 480px;
  overflow: hidden;
  text-overflow: ellipsis;
}
.ertel-gantt-aviso-dependencia--conflito {
  color: var(--ertel-crit-a);
  font-weight: 700;
}
.ertel-gantt-dep-item__select {
  width: auto;
  max-width: 160px;
  font-size: var(--ertel-text-xs);
  padding: 4px 6px;
}
.ertel-gantt-dependencias {
  border-top: 1px solid var(--ertel-border);
  margin-top: var(--ertel-space-4);
  padding-top: var(--ertel-space-3);
}
.ertel-gantt-dep-lista {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.ertel-gantt-dep-item {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 8px 10px;
  background: var(--ertel-surface-alt);
  border-radius: var(--ertel-radius-md);
  font-size: var(--ertel-text-sm);
  cursor: grab;
}
.ertel-gantt-dep-item.ertel-dragging {
  opacity: 0.4;
}
.ertel-gantt-dep-item__ordem {
  font-weight: 700;
  color: var(--ertel-primary);
  min-width: 22px;
}
.ertel-gantt-dep-item__arrastar {
  color: var(--ertel-muted);
  letter-spacing: -2px;
  cursor: grab;
}
.ertel-gantt-dep-item__titulo {
  flex: 1;
}
.ertel-gantt-dep-item__data {
  font-size: var(--ertel-text-xs);
  color: var(--ertel-muted);
}
.ertel-gantt-salvar-barra {
  display: flex;
  justify-content: flex-end;
  border-top: 1px solid var(--ertel-border);
  margin-top: var(--ertel-space-4);
  padding-top: var(--ertel-space-3);
}
.ertel-gantt-imprimir-barra {
  display: flex;
  gap: var(--ertel-space-2);
  margin: var(--ertel-space-4) 0 0;
}

/* -- Carrossel de Turno --------------------------------------------------------------------- */

.ertel-prog-turno-carrossel {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 8px 0 12px;
  border-bottom: 1px solid var(--ertel-border);
  margin-bottom: 10px;
}
.ertel-prog-turno-carrossel__label {
  font-size: var(--ertel-text-sm);
  font-weight: 700;
  min-width: 110px;
  text-align: center;
}

/* -- Alerta de excesso de horas — pisca, reaproveitando a animação já definida em
   solicitacoes.css (@keyframes ertel-piscar-vermelho carrega global pra toda a página) ------ */

.ertel-colab-equipe-card--excesso {
  animation: ertel-piscar-vermelho 1.4s ease-in-out infinite;
}

/* -- Confirmação visual — OS programada fica com um verde persistente enquanto estiver
   dentro do calendário (não é mais um flash de alguns segundos, fica até ser removida
   ou movida da programação) --------------------------------------------------------- */

.ertel-atribuicao--recem-criada {
  background: var(--ertel-success-bg, #DCFCE7) !important;
  border-left-color: var(--ertel-success) !important;
}

/* -- Filtros do Banco de OS ------------------------------------------------------------------ */

.ertel-prog-banco__filtros {
  display: flex;
  gap: 6px;
  margin: 8px 0 var(--ertel-space-3);
}
.ertel-prog-banco__filtros select {
  font-size: var(--ertel-text-xs);
  padding: 4px 6px;
}

/* Filtro de Fábrica / Setor-Área Fabril / Complexo Industrial (multi-seleção):
   CSS movido pra `shared/styles/components.css` (`.ertel-filtro-multi*`) —
   virou componente compartilhado, ver `shared/components/filtro-multi-select.js`. */
