/* glass/no-ar.css — o que o site esconde quando vai ao ar.

   POR QUE ESTE ARQUIVO EXISTE
   O site tem marcadores [preencher] nos lugares que esperam um dado da
   empresa. Enquanto se constrói, eles são úteis: mostram o buraco. No ar,
   eles são o contrário — o cliente lê "[PREENCHER: PARCELAMENTO]" e a página
   parece quebrada.

   Esta folha é injetada SÓ na pasta publicada. No trabalho do dia a dia e no
   modo edição os marcadores continuam à vista, que é onde eles servem.

   COMO FUNCIONA, E POR QUE NÃO PRECISA DE MANUTENÇÃO
   Campo preenchido deixa de ser `.pending` e passa a `.preenchido`. Então
   toda regra daqui deixa de casar sozinha assim que o dado existe — a frase,
   a linha da ficha ou a pergunta do FAQ voltam sem ninguém mexer em nada.

   TRÊS COMPORTAMENTOS, e a escolha entre eles é por frase:

   1. SOME SÓ O MARCADOR — a frase continua correta sem ele.
      "Pagamento processado com segurança. ___" → "Pagamento processado com
      segurança." Nada a fazer além de esconder.

   2. SOME O TRECHO QUE DEPENDE DELE — a frase quebraria no meio.
      "o colchão leva ___ para tomar a forma final" viraria "o colchão leva
      para tomar a forma final". Esses trechos estão marcados no HTML com
      `data-so-com-dado`, e o marcador é permanente: ele documenta a
      dependência mesmo para quem for reconstruir o site em outra tecnologia.

   3. SOME O BLOCO INTEIRO — sem o dado sobra um rótulo órfão ou uma linha
      vazia. "Entrega ___" viraria só "Entrega"; uma pergunta de FAQ ficaria
      sem resposta. Aqui o alvo é o contêiner, escolhido um a um: nenhuma
      regra genérica, porque esconder demais é tão ruim quanto de menos. */

/* ---- 1. o marcador ---- */
.pending { display: none !important; }

/* ---- 2. o que só faz sentido com o dado ----
   Um marcador em `data-so-com-dado` no HTML. Some o trecho, o parágrafo, a
   linha da ficha ou a pergunta inteira do FAQ — o que estiver marcado. */
[data-so-com-dado]:has(.pending) { display: none !important; }

/* ---- 3. blocos rótulo-e-valor ----
   A linha da ficha e o item de lista SAÍRAM daqui: escondiam demais.
   "Garantia: 90 dias — ___" perdia o "90 dias" junto com o marcador, e
   "Núcleo: Molas — ___" perdia o "Molas". Onde o valor é só o marcador, a
   linha está marcada no HTML; onde há texto próprio, ele fica.
   Aqui o contêiner é seguro por construção: são listas e linhas em que o
   texto fixo é só um rótulo, e sem o valor sobra rótulo órfão. Nenhuma
   destas usa `:only-child` — ver a nota abaixo sobre por quê. */
.teste-cond li:has(.pending),
.delivery:has(.pending),
.installments:has(.pending),
.bb-entrega:has(.pending),
.parc:has(.pending),
.footer-bottom p:has(.pending),
.historia-fact:has(.pending),
.video-tile:has(.pending) { display: none !important; }

/* ---- por que não há regra esperta aqui ----

   A primeira versão tentou adivinhar por seletor: "esconda o parágrafo cujo
   único filho é o marcador", com `:has(> .pending:only-child)`. Pareceu
   elegante e estava errado — `:only-child` conta ELEMENTOS, não texto. A
   resposta "Sim — as 100 noites de teste existem exatamente para isso.
   [marcador]" tem o marcador como único elemento filho, e sumiu inteira,
   junto com uma frase que estava completa.

   Esconder demais é pior do que mostrar o marcador: o marcador denuncia o
   buraco, a regra esperta apaga conteúdo bom sem avisar.

   Agora quem some está marcado no HTML, um a um, com `data-so-com-dado`. É
   mais verboso e é verificável — e a marcação sobrevive a uma reconstrução
   do site em outra tecnologia, porque documenta a dependência. */
