/* ============================================================
   Bilhete do passageiro — modal de emissão do itinerário.
   Mesmo vocabulário visual do modal de fatura (grade de campos,
   cartões de trecho); usa as variáveis do tema, então acompanha
   o ds-theme sem regra duplicada.
   ============================================================ */
#bilhete-overlay .modal-box { width: min(760px, 100%); }
#bilhete-overlay .bilhete-grade {
  display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px 14px;
}
#bilhete-overlay .bilhete-grade.tres { grid-template-columns: repeat(3, minmax(0, 1fr)); }
#bilhete-overlay .bilhete-grade.quatro { grid-template-columns: repeat(4, minmax(0, 1fr)); }
#bilhete-overlay .bilhete-grade > div { min-width: 0; }
#bilhete-overlay label { display: block; margin-top: 0; }
#bilhete-overlay input, #bilhete-overlay textarea, #bilhete-overlay select { width: 100%; }
#bilhete-overlay textarea { min-height: 68px; resize: vertical; font: inherit; }
#bilhete-overlay .bilhete-bloco { margin-top: 16px; }
#bilhete-overlay .bilhete-bloco > h4 {
  margin: 0 0 8px; font-size: 13px; letter-spacing: .04em; text-transform: uppercase;
  color: var(--sub);
}
#bilhete-overlay .bilhete-trecho,
#bilhete-overlay .bilhete-pax-card {
  border: 1px solid var(--borda); border-radius: 10px; padding: 10px 12px; margin-bottom: 10px;
}
#bilhete-overlay .bilhete-trecho-topo {
  display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-bottom: 6px;
}
#bilhete-overlay .bilhete-trecho-topo b { font-size: 13px; }
#bilhete-overlay .bilhete-trecho-campos {
  display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 8px;
}
#bilhete-overlay .bilhete-trecho-campos label,
#bilhete-overlay .bilhete-grade.quatro label { font-size: 11px; }
#bilhete-overlay .bilhete-remover {
  background: none; border: 0; color: var(--erro); cursor: pointer; font: inherit;
  font-size: 12px; padding: 2px 4px;
}
#bilhete-overlay .bilhete-rodape-info { flex: 1; color: var(--sub); font-size: 12px; }
@media (max-width: 760px) {
  #bilhete-overlay .bilhete-grade,
  #bilhete-overlay .bilhete-grade.tres,
  #bilhete-overlay .bilhete-grade.quatro { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  #bilhete-overlay .bilhete-trecho-campos { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
