/* ---- Paleta institucional FAP ---- */
:root{
  --fap-azul:#0b2f5b;
  --fap-azul-claro:#14508f;
  --fap-dorado:#c8a250;
}
.fap-nav{ background:var(--fap-azul); }
.btn-fap{ background:var(--fap-azul); color:#fff; }
.btn-fap:hover{ background:var(--fap-azul-claro); color:#fff; }
.text-fap{ color:var(--fap-azul); }
.borde-fap{ border-top:4px solid var(--fap-dorado); }

/* ---- Formulario público ---- */
.pregunta{ border:0; border-radius:.75rem; box-shadow:0 2px 10px rgba(0,0,0,.06); }
.pregunta .card-header{
  background:#fff; border-bottom:2px solid #eef2f7; font-weight:600; color:var(--fap-azul);
}
.num-pregunta{
  display:inline-flex; align-items:center; justify-content:center;
  width:28px; height:28px; border-radius:50%;
  background:var(--fap-azul); color:#fff; font-size:.85rem; margin-right:.5rem;
}
.form-check{ padding:.25rem .25rem .25rem 1.9rem; border-radius:.4rem; }
.form-check:hover{ background:#f2f6fb; }

/* ---- Panel ---- */
.kpi{ border-radius:.75rem; border:0; box-shadow:0 2px 10px rgba(0,0,0,.06); }
.kpi .valor{ font-size:1.9rem; font-weight:700; color:var(--fap-azul); line-height:1; }
.kpi .rotulo{ font-size:.8rem; color:#6c757d; text-transform:uppercase; letter-spacing:.5px; }
.card-grafico{ border:0; border-radius:.75rem; box-shadow:0 2px 10px rgba(0,0,0,.06); }
.card-grafico .card-header{ background:#fff; font-weight:600; color:var(--fap-azul); border-bottom:2px solid #eef2f7; }
.tabla-cruce th{ background:#f1f5fa; font-size:.85rem; }
.tabla-cruce td{ text-align:center; }

@media print{
  .navbar,.no-print,.btn{ display:none !important; }
  .card-grafico{ break-inside:avoid; box-shadow:none; border:1px solid #ddd; }
}
