/* ==========================================================================
   Ajudo — Calendário Bolsa Família 2026
   Resultado do seletor de NIS + destaque da linha na tabela.
   ========================================================================== */

/* Tabela base (sl-table não é compartilhada — cada tool redefine a sua). */
.sl-table-wrap { overflow-x: auto; margin: 14px 0 22px; }
.sl-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.9rem;
  background: var(--paper);
  border: 1.5px solid var(--line);
  border-radius: var(--radius);
}
.sl-table th, .sl-table td {
  padding: 9px 10px;
  border-bottom: 1.5px solid var(--line);
  text-align: center;
}
.sl-table thead th {
  font-size: 0.72rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--ink-soft);
  background: var(--paper-deep);
}
.sl-table tbody tr:last-child td, .sl-table tbody tr:last-child th { border-bottom: none; }

.bf-result {
  margin-top: 16px;
  padding: 18px 18px 8px;
  background: var(--paper);
  border: 1px solid var(--line);
  border-radius: var(--radius);
}
.bf-result.is-empty {
  padding: 16px 18px;
  background: transparent;
  border-style: dashed;
}
.bf-result-hint { color: var(--ink-soft); font-size: 0.95rem; margin: 0; }

.bf-result-title {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
  font-weight: 600;
  margin: 0 0 12px;
}
.bf-result-nis {
  font-size: 0.78rem;
  font-weight: 700;
  color: var(--ink);
  background: var(--mustard);
  padding: 2px 10px;
  border-radius: 999px;
}

.bf-dates {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 8px;
}
.bf-dates li {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 8px 4px;
  background: var(--paper-deep);
  border-radius: 10px;
}
.bf-mes {
  font-size: 0.72rem;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--ink-soft);
}
.bf-dia { font-size: 1.25rem; font-weight: 700; color: var(--ink); line-height: 1.2; }

/* Tabela completa */
.bf-table th[scope="row"] {
  font-weight: 700;
  background: var(--paper-deep);
  text-align: center;
}
.bf-table td { text-align: center; transition: background 0.15s ease; }
.bf-table tr.is-active th[scope="row"] { background: var(--mustard); color: var(--ink); }
.bf-table tr.is-active td {
  background: rgba(227, 169, 47, 0.18);
  font-weight: 700;
  color: var(--ink);
}
.bf-source { font-size: 0.85rem; color: var(--ink-soft); margin-top: 10px; }

@media (max-width: 640px) {
  .bf-dates { grid-template-columns: repeat(4, 1fr); }
}
@media (max-width: 380px) {
  .bf-dates { grid-template-columns: repeat(3, 1fr); }
}
