/* ============================================================
   Demonstração do módulo de Cessão/Disposição
   Complementa o main.css do Conecta (mesma paleta e formas).
   ============================================================ */

/* Aviso de ambiente de demonstração */
.demo-bar {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
  background: var(--warning-subtle);
  border: 1px solid #fefcbf;
  color: #744210;
  border-radius: var(--radius-sm);
  padding: 10px 14px;
  font-size: 13px;
  margin-bottom: 24px;
}
.demo-bar > span { flex: 1 1 260px; }
.demo-tag { flex-shrink: 0; }

/* Seletor de perfil no menu lateral */
.persona { padding-top: 4px; }
.persona-select {
  width: 100%;
  font-family: var(--font-sans);
  font-size: 14px;
  color: #fff;
  background: rgba(255,255,255,0.06) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%2394a3b8'%3E%3Cpath d='M7 10l5 5 5-5z'/%3E%3C/svg%3E") no-repeat right 10px center / 20px;
  border: 1px solid rgba(255,255,255,0.14);
  border-radius: var(--radius-sm);
  padding: 10px 36px 10px 12px;
  appearance: none;
  cursor: pointer;
  margin: 0 4px;
  width: calc(100% - 8px);
}
.persona-select:focus { outline: 2px solid var(--primary-light); outline-offset: 2px; }
.persona-select option { color: var(--neutral-800); background: #fff; }
.persona-hint { font-size: 12px; color: var(--neutral-500); padding: 8px 12px 0; line-height: 1.5; }

/* Lista: servidor, movimentação, situação e ações */
.data-table td { vertical-align: middle; }
.linha-nome { display: block; font-weight: 600; color: var(--neutral-800); text-decoration: none; }
.linha-nome:hover { color: var(--primary); text-decoration: underline; }
.linha-sub { display: block; font-size: 12px; color: var(--neutral-500); margin-top: 3px; }
.linha-mov { display: flex; align-items: center; gap: 6px; flex-wrap: wrap; }
.linha-mov .bi-arrow-right { color: var(--neutral-400); }
.data-table td[data-label="Servidor"] { min-width: 170px; }
.data-table td[data-label="Movimentação"] { min-width: 220px; }
.data-table td[data-label="Situação"] { min-width: 170px; }
.data-table td[data-label="Ações"] { width: 1%; min-width: 220px; }
.acoes-linha { display: flex; gap: 6px; justify-content: flex-end; align-items: center; flex-wrap: wrap; }
.acoes-linha .btn-sm { padding: 7px 11px; }

/* Janela de ação */
.modal-box { max-height: calc(100vh - 32px); overflow-y: auto; }
.modal-resumo {
  margin-top: 12px;
  background: var(--neutral-50);
  border: 1px solid var(--neutral-200);
  border-radius: var(--radius-sm);
  padding: 10px 14px;
  font-size: 13px;
  line-height: 1.8;
  color: var(--neutral-700);
}
.modal-resumo .bi-arrow-right { color: var(--neutral-400); }
.modal-campo { margin: 16px 0 0; }
.modal-aviso { display: flex; gap: 6px; align-items: center; font-size: 13px; color: var(--neutral-600); margin: 12px 0 16px; }
.modal-box .decision-actions { margin-top: 16px; }

/* Sem acesso */
.acesso-negado { max-width: 560px; margin: 24px auto; }

@media (max-width: 768px) {
  .demo-tag { display: none; }
  .demo-bar .btn { width: 100%; justify-content: center; }
  .acoes-linha { flex-wrap: wrap; justify-content: flex-start; width: 100%; }
  .data-table td[data-label] { min-width: 0; width: auto; }
  .data-table td[data-label="Movimentação"], .data-table td[data-label="Situação"] { grid-column: 1 / -1; }
  .acoes-linha .btn-sm { padding: 9px 14px; }
}
