/* visao.css — Maturidade do protótipo: PRONTO PRA DEV × FUTURO.
 *
 * Par de css/visao.css + js/visao.js (o JS decide a visão ativa e escreve
 * data-visao no <html>; esta folha decide o que existe em cada uma).
 *
 * Contrato, um atributo só, em qualquer elemento:
 *   data-visao="futuro"   existe só no Futuro (evolução em avaliação)
 *   data-visao="dev"      existe só no Pronto pra DEV (a versão que o Futuro
 *                         substitui — os dois blocos convivem no arquivo)
 *   sem atributo          aparece nas DUAS visões
 *
 * Sem cor, sem geometria, sem tipografia: este arquivo não desenha nada. É por
 * isso que ele pode entrar em toda tela da Lekto — inclusive as de impressão e
 * as de espec — sem risco de mudar o visual de nada.
 *
 * NENHUMA marca visual no que é do Futuro, de propósito: a visão troca a tela
 * inteira, e uma tarja em cada bloco novo mudaria o desenho que se quer avaliar.
 */

/* !important é deliberado, e é o que faz o mecanismo ser confiável.
   Este protótipo não tem regra global de [hidden]: cada componente declara o
   próprio display (.ed-pane, .selector, .rede-table-wrap…), e regra de classe
   do autor vence [hidden] da folha do navegador — já custou depuração longa
   achando que um botão tinha sumido quando ele seguia desenhado na tela.
   Aqui o problema seria pior: um seletor de duas classes (0,2,0) empata ou
   vence o nosso (0,2,1), então um bloco do Futuro poderia vazar para o Pronto
   pra DEV em telas específicas — exatamente a falha que este sistema existe
   para impedir. Esconder é decisão de maturidade, não de estilo: vence sempre. */
html[data-visao="dev"] [data-visao="futuro"],
html[data-visao="futuro"] [data-visao="dev"] {
  display: none !important;
}

/* Sem data-visao no <html> (tela que ainda não carrega js/visao.js, ou storage
   bloqueado antes de o script rodar) nenhuma regra acima casa, e TUDO aparece.
   O fallback é deliberado: mostrar demais é recuperável numa conversa, esconder
   sem ninguém pedir faz a tela parecer quebrada e manda caçar bug que não há. */
