/*
  Tema Serra — a camada de IDENTIDADE, gerada por `tema:novo`.

      base.css              primitivas da plataforma
      celulas/base-1.css      grade, ritmo, responsivo
      mm-serra.css        isto aqui

  Nenhuma regra abaixo decide grade, largura, direcao de eixo ou posicao:
  o `ProvaDestrutivaTest` recusa cada uma pelo nome sobre as classes da
  celula. Apagado este arquivo, a pagina fica FEIA e continua de pe.
*/

:root {
  /* Derivado, e por isso NAO e token: nao e decisao de ninguem.
     O que alguem escolhe e emitido (ver ThemeRaiz); o que se calcula fica aqui. */

  --filete: color-mix(in srgb, var(--tinta) 16%, transparent);
  --p-display: var(--display);
  --p-texto: var(--texto);
  --p-peso-titulo: 600;
}

body { background: var(--p-fundo); color: var(--p-tinta); font-weight: var(--p-texto-p-peso, 400); font-family: var(--p-texto-p-fonte, var(--p-texto)); }

h1, h2, h3 { font-family: var(--p-display); font-weight: var(--p-peso-titulo); }
h3 { font-family: var(--p-texto-h3-fonte, var(--p-texto)); font-weight: var(--p-texto-h3-peso, 600); }

.apoio { font-weight: 600; color: var(--mm-text-eyebrow-color, var(--p-destaque-texto)); }
.conduz { color: var(--mm-text-subtitle-color, var(--p-tinta-fraca)); }
.item p { color: var(--p-tinta-fraca); }

/* A superficie alternativa. Sem esta regra `--fundo-alt` seria um
   controle declarado que nao pinta nada — o defeito que o
   `theme:tokens-check` pega. */
#processo { background: var(--p-fundo-alt); }

.topo { background: var(--p-menu-fundo, var(--p-fundo)); border-bottom: 1px solid var(--filete); }
.marca { font-family: var(--p-display); font-weight: 700; }
.menu a { color: var(--p-menu-texto, var(--p-tinta-fraca)); }
.menu a:hover, .menu a:focus-visible { color: var(--p-menu-texto-selecao, var(--p-destaque-texto)); }

.acao { background: var(--mm-cta-primary-default-background, var(--p-destaque)); color: var(--mm-cta-primary-default-text, var(--p-fundo)); border: 1px solid var(--mm-cta-primary-default-border, var(--p-destaque)); font-weight: 600; }
.acao:hover, .acao:focus-visible { background: var(--mm-cta-primary-hover-background, var(--p-escuro)); border-color: var(--mm-cta-primary-hover-border, var(--p-escuro)); color: var(--mm-cta-primary-hover-text, var(--mm-cta-primary-default-text, var(--p-fundo))); }
.acao--vazada { background: transparent; color: var(--p-destaque-texto); border-color: var(--filete); }

.passo .marcador { font-family: var(--p-display); font-weight: 700; color: var(--p-destaque-texto); }

/* SDD-builder-refino-7 F-R7-1 (ADR-1): a composicao nao emite <b>; `.valor`/`.rotulo` alcancam o mesmo pedaco na secao convertida (o `:not(.valor)` impede a regra do rotulo de pegar o valor, que tambem e' um span). */
.numero b, .numero .valor { font-weight: 700; }
.numero span:not(.valor), .numero .rotulo { color: var(--p-tinta-fraca); }

.faixa { background: var(--p-escuro); color: var(--p-fundo); }
.faixa .numero span:not(.valor), .faixa .numero .rotulo { color: color-mix(in srgb, var(--p-fundo) 72%, transparent); }

.campo label { font-weight: 600; }
.campo input, .campo textarea { background: var(--p-fundo); border: 1px solid var(--filete); }
.campo input:focus, .campo textarea:focus { outline: none; border-color: var(--p-destaque); }

.rodape { background: var(--p-escuro); color: var(--p-fundo); }
.rodape a { color: var(--p-fundo); }

:focus-visible { outline: 2px solid var(--p-destaque); }

/* F-R3-6 (4.1) - os estados do item de menu.

   O FUNDO por item nao existia: o topo pintava um fundo so, e o item nao tinha
   nenhum. Nasce transparente, entao nada muda ate alguem escolher uma cor.

   O ATIVO tambem nao existia, e nao era esquecimento: estes menus sao ancoras
   para secoes da MESMA pagina. Quem marca `aria-current` agora e o
   comportamento `item-ativo` de comportamentos.js - por caminho quando o link
   aponta para outra pagina, e por secao a vista quando e ancora. */
.menu a { background: var(--p-menu-fundo-selecao, transparent); transition: background .2s ease, color .2s ease; }
.menu a:hover, .menu a:focus-visible { background: var(--p-menu-fundo-selecao, transparent); }
.menu a[aria-current] { background: var(--p-menu-fundo-ativo, transparent); color: var(--p-menu-texto-ativo, var(--p-tinta-fraca)); }

/* F-R3-6 (4.2) - os seis niveis, ligados aos papeis de texto.

   A RESERVA de cada um e' o que a folha desenhava: sem escolha no painel, a
   variavel nao e' emitida e vale a expressao de sempre - inclusive o `clamp()`
   dos titulos, que e' o que faz o H1 encolher no celular.

   h4, h5 e h6 nao eram desenhados por tema nenhum. Eles nao sao inercia: o
   builder cria no de composicao com `tag: h4`, e sem regra o campo existiria
   sem nada para pintar. */
h1 { font-family: var(--p-texto-h1-fonte, var(--p-display)); font-weight: var(--p-texto-h1-peso, var(--p-peso-titulo)); }
h2 { font-family: var(--p-texto-h2-fonte, var(--p-display)); font-weight: var(--p-texto-h2-peso, var(--p-peso-titulo)); }
h3 { font-family: var(--p-texto-h3-fonte, var(--p-texto)); font-weight: var(--p-texto-h3-peso, 600); }
h4 { font-family: var(--p-texto-h4-fonte, var(--p-texto)); font-weight: var(--p-texto-h4-peso, 600); font-size: var(--p-texto-h4-tamanho, calc(1.15rem * var(--escala-texto, 1))); }
h5 { font-family: var(--p-texto-h5-fonte, var(--p-texto)); font-weight: var(--p-texto-h5-peso, 600); font-size: var(--p-texto-h5-tamanho, calc(1rem * var(--escala-texto, 1))); }
h6 { font-family: var(--p-texto-h6-fonte, var(--p-texto)); font-weight: var(--p-texto-h6-peso, 600); font-size: var(--p-texto-h6-tamanho, calc(.88rem * var(--escala-texto, 1))); }
/* SDD-builder-refino-10 F-R10-14 — o nivel PARaGRAFO.
   Toda leitura de papel leva RESERVA: entre publicar e o site:push-theme a
   variavel nao existe, e uma leitura sem reserva deixaria o texto sem fonte
   e sem tamanho nessa janela. A reserva e' o que a folha ja' fazia. */
p { font-family: var(--p-texto-p-fonte, var(--p-texto)); font-weight: var(--p-texto-p-peso, 400); font-size: var(--p-texto-p-tamanho, calc(1rem * var(--escala-texto, 1))); }

/* F-R3-6 (4.3) - os dois botoes, nos tres estados.

   Vem DEPOIS das regras do tema de proposito: mesma especificidade, e quem
   vence e' a ultima. Sem isso, `.contato .btn-solid` da ygg-home continuaria
   mandando na cor escolhida no painel - o defeito de campo que obedece em
   metade da pagina.

   A reserva de cada um e' `inherit`/`currentColor` quando existe, e a
   expressao de hoje quando nao: sem escolha no painel a variavel nao e'
   emitida e o botao fica exatamente como estava. */
.acao { background: var(--p-botao-principal-fundo, var(--p-destaque)); color: var(--p-botao-principal-texto, var(--p-fundo)); border-color: var(--p-botao-principal-borda, var(--p-destaque)); border-width: var(--p-botao-principal-espessura, 1px); border-style: solid; }
.acao:hover, .acao:focus-visible { background: var(--p-botao-principal-selecao-fundo, var(--p-escuro)); color: var(--p-botao-principal-selecao-texto, var(--p-fundo)); border-color: var(--p-botao-principal-selecao-borda, var(--p-escuro)); border-width: var(--p-botao-principal-selecao-espessura, 1px); }
.acao:active, .acao[aria-current] { background: var(--p-botao-principal-ativo-fundo, var(--p-escuro)); color: var(--p-botao-principal-ativo-texto, var(--p-fundo)); border-color: var(--p-botao-principal-ativo-borda, var(--p-escuro)); border-width: var(--p-botao-principal-ativo-espessura, 1px); }

.acao--vazada { background: var(--p-botao-secundario-fundo, transparent); color: var(--p-botao-secundario-texto, var(--p-destaque-texto)); border-color: var(--p-botao-secundario-borda, var(--filete)); border-width: var(--p-botao-secundario-espessura, 1px); border-style: solid; }
.acao--vazada:hover, .acao--vazada:focus-visible { background: var(--p-botao-secundario-selecao-fundo, transparent); color: var(--p-botao-secundario-selecao-texto, var(--p-tinta)); border-color: var(--p-botao-secundario-selecao-borda, var(--p-tinta)); border-width: var(--p-botao-secundario-selecao-espessura, 1px); }
.acao--vazada:active, .acao--vazada[aria-current] { background: var(--p-botao-secundario-ativo-fundo, transparent); color: var(--p-botao-secundario-ativo-texto, var(--p-tinta)); border-color: var(--p-botao-secundario-ativo-borda, var(--p-tinta)); border-width: var(--p-botao-secundario-ativo-espessura, 1px); }
