/* public/faq.css — CSS só de página de /faq. O que se repete com o resto do app já está em
   app.css (vendorado) e estilo.css (dono: agente FRONTEND). Regra de sempre: nenhuma cor
   literal, só var(--token) do tema "garagem" (public/tema.css). Dono: agente FAQ (faq/**). */

/* ── o desempate com public/app.js ───────────────────────────────────────────────────────
   Mesmo truque de public/analises.css: app.js não conhece /faq, então no boot ele sempre
   esconde #ssr e cai em mostrarHome(). Um seletor por #id tem mais especificidade que o
   `[hidden]{display:none!important}` de estilo.css (também !important) — isto vence de
   qualquer jeito. faq/pagina.mjs marca `body.pagina-faq` nesta trilha. */
body.pagina-faq #ssr{display:block!important}
body.pagina-faq #viewHome{display:none!important}
body.pagina-faq #viewModelo{display:none!important}

.avfaq{max-width:var(--maxw);margin:0 auto;padding:22px 18px 48px;display:flex;
  flex-direction:column;gap:22px}

/* ── cabeçalho ────────────────────────────────────────────────────────────────────────── */
.avfaq-cabecalho h1{font-size:clamp(24px,4vw,32px);font-weight:800;letter-spacing:-.02em;
  color:var(--text);margin:0 0 8px}
.avfaq-fonte{font-size:14px;color:var(--text2);line-height:1.55;margin:0 0 16px;max-width:70ch}

/* ── busca ────────────────────────────────────────────────────────────────────────────── */
.avfaq-busca{max-width:520px}
.avfaq-busca-rotulo{display:block;font-size:12.5px;font-weight:700;color:var(--muted);
  margin:0 0 6px;text-transform:uppercase;letter-spacing:.03em}
.avfaq-busca-campo{width:100%;box-sizing:border-box;padding:11px 14px;border-radius:var(--radius-sm);
  border:1px solid var(--line);background:var(--surface);color:var(--text);font-size:15px;
  font-family:inherit}
.avfaq-busca-campo:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:var(--accent)}
.avfaq-busca-campo::placeholder{color:var(--muted)}
.avfaq-busca-contador{font-size:12.5px;color:var(--muted);margin:6px 0 0;min-height:1.2em}

/* ── índice de categorias ────────────────────────────────────────────────────────────────
   affordance de âncora: fica como uma "estante" de links, nunca texto solto sem cara de
   controle (mesma bronca do Bruno "não sei onde clicar", já registrada em docs/CONTRATO.md). */
.faq-indice{display:flex;flex-wrap:wrap;gap:8px}
.faq-indice a{display:inline-flex;align-items:center;gap:6px;padding:8px 13px;
  border-radius:999px;border:1px solid var(--line);background:var(--surface);color:var(--text);
  font-size:13.5px;font-weight:700;text-decoration:none;transition:border-color .15s,color .15s}
.faq-indice a:hover,.faq-indice a:focus-visible{border-color:var(--accent);color:var(--accent);
  outline:none}
.faq-indice-n{font-size:11.5px;font-weight:800;color:var(--muted);background:var(--surface2);
  border-radius:999px;padding:1px 7px}

/* ── estado vazio da busca ────────────────────────────────────────────────────────────── */
.avfaq-vazio{background:var(--surface2);border-radius:var(--radius);padding:16px 18px}
.avfaq-vazio p{margin:0;font-size:14px;color:var(--text2)}

/* ── categorias e perguntas ───────────────────────────────────────────────────────────────
   <details>/<summary> nativo, aberto por padrão (a resposta tem que estar visível pra quem
   não roda JS e pra qualquer crawler): o clique só recolhe, nunca esconde do HTML inicial. */
.faq-categoria h2{font-size:19px;font-weight:800;color:var(--accent);margin:0 0 12px;
  padding-bottom:8px;border-bottom:1px solid var(--line)}
.faq-lista{display:flex;flex-direction:column;gap:2px}
.faq-item{border-bottom:1px solid var(--line)}
.faq-item:last-child{border-bottom:none}
.faq-q{cursor:pointer;list-style:none;padding:13px 4px;font-size:15px;font-weight:700;
  color:var(--text);display:flex;justify-content:space-between;align-items:center;gap:12px;
  -webkit-tap-highlight-color:transparent}
.faq-q::-webkit-details-marker{display:none}
.faq-q::after{content:"\2212";flex:none;width:20px;height:20px;display:flex;align-items:center;
  justify-content:center;font-size:16px;color:var(--muted);font-weight:400}
.faq-item:not([open]) .faq-q::after{content:"+"}
.faq-q:hover{color:var(--accent)}
.faq-q:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}
.faq-a{padding:0 4px 15px}
.faq-a p{margin:0 0 8px;font-size:14.5px;line-height:1.6;color:var(--text2);max-width:74ch}
.faq-a p:last-child{margin-bottom:0}
.faq-link a{font-size:13.5px;font-weight:700;color:var(--accent);text-decoration:none}
.faq-link a:hover{text-decoration:underline}

@media (max-width:640px){
  .avfaq{padding:18px 16px 36px}
  .faq-q{font-size:14.5px}
}
