/* =============================================================================
   Gabarita · publico.css — telas públicas (07 P1–P7, C2) e casas provisórias.
   Só tokens; movimento pelas classes de animacoes.css.
   ============================================================================= */
@layer telas {

  /* ------------------------------------------------------------------ HERÓI */
  .heroi { padding: var(--esp-6) var(--esp-pagina) var(--esp-12); overflow: clip; }
  .heroi__interno {
    display: grid; gap: var(--esp-10);
    max-width: var(--conteudo-max); margin-inline: auto;
    align-items: center;
  }
  .heroi__texto { display: grid; gap: var(--esp-5); justify-items: start; }
  .heroi__selo {
    display: inline-flex; align-items: center; gap: var(--esp-2);
    padding: 6px 14px 6px 10px;
    border: var(--borda-grossa) solid var(--tinta-900);
    border-radius: var(--raio-pilula);
    background: var(--superficie);
    box-shadow: 0 3px 0 var(--tinta-900);
    font-size: var(--texto-sm); font-weight: 800;
    rotate: -2deg;
  }
  .heroi__selo .icone { width: 1.125rem; height: 1.125rem; color: var(--marca-700); --icone-tom: var(--marca-500); }
  .heroi__titulo { font-size: var(--texto-4xl); line-height: 1.02; letter-spacing: -0.035em; max-width: 16ch; }
  .heroi__sub { max-width: 44ch; font-size: var(--texto-lg); color: var(--tinta-700); }
  .heroi__acoes { display: flex; flex-wrap: wrap; gap: var(--esp-3); }
  .heroi__prova { display: flex; align-items: center; gap: var(--esp-3); font-size: var(--texto-sm); color: var(--tinta-700); }
  .heroi__prova .avatar-grupo .avatar { box-shadow: 0 0 0 2.5px var(--papel); }
  @media (max-width: 29.99em) {
    .heroi__acoes { width: 100%; }
    .heroi__acoes .botao { flex: 1 1 100%; }
  }
  @media (min-width: 64em) {
    .heroi { padding-block: var(--esp-12) var(--esp-16); }
    .heroi__interno { grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr); gap: var(--esp-12); }
  }

  /* palco: a questão demo com adesivos em volta */
  .palco { position: relative; padding: var(--esp-6) var(--esp-2) var(--esp-8); }
  .palco::before {
    content: ""; position: absolute; z-index: 0;
    inset: 4% -6% 0 8%;
    border-radius: 44% 56% 48% 52% / 52% 44% 56% 48%;
    background: var(--marca-100);
    rotate: -4deg;
  }
  .palco > * { position: relative; z-index: 1; }
  .palco__adesivo { position: absolute; z-index: 2; pointer-events: none; }
  .palco__adesivo--sequencia { top: 2px; left: -6px; rotate: -8deg; }
  .palco__adesivo--sequencia .sequencia { background: var(--superficie); box-shadow: var(--sombra-2); }
  .palco__adesivo--conquista { top: -6px; right: -4px; }
  .palco__adesivo--conquista .adesivo__arte { width: 56px; height: 56px; }
  .palco__adesivo--conquista .adesivo__arte .icone { width: 28px; height: 28px; }
  .palco__adesivo--anel { right: 22px; bottom: -10px; padding: 5px; border-radius: 50%; background: var(--superficie); box-shadow: var(--sombra-2); }
  .palco .demo__topo { padding-right: 52px; white-space: nowrap; }
  @media (max-width: 29.99em) { .palco .demo__topo { padding-right: 34px; } }
  .palco .demo { margin-bottom: var(--esp-6); }
  @media (max-width: 29.99em) {
    .palco { padding-inline: 0; }
    .palco__adesivo--sequencia { left: -2px; }
    .palco__adesivo--conquista { right: 0; }
    .palco__adesivo--anel { right: 14px; }
    .palco__adesivo--anel .anel { --tamanho: 60px !important; }
  }

  .demo {
    display: grid; gap: var(--esp-3);
    padding: var(--esp-4) var(--esp-4) var(--esp-5);
    border: var(--borda-carimbo) solid var(--tinta-900);
    border-radius: var(--raio-xl);
    background: var(--superficie);
    box-shadow: 0 8px 0 0 var(--tinta-900), var(--sombra-3);
  }
  .demo__topo { display: flex; align-items: center; justify-content: space-between; gap: var(--esp-2); margin-top: var(--esp-2); }
  .demo__rotulo { display: inline-flex; align-items: center; gap: 6px; font-size: var(--texto-xs); font-weight: 800; letter-spacing: 0.06em; text-transform: uppercase; color: var(--texto-suave); }
  .demo__rotulo .icone { width: 1rem; height: 1rem; color: var(--marca-700); --icone-tom: var(--marca-500); }
  .demo__posicao { font-size: var(--texto-xs); font-weight: 800; color: var(--texto-suave); font-variant-numeric: tabular-nums; }
  .demo__questao { min-height: 18rem; }
  .demo .questao { max-width: none; margin-top: var(--esp-2); }
  .demo .questao__enunciado { font-size: var(--texto-md); line-height: 1.55; }
  .demo .alternativas { gap: var(--esp-2); margin-top: var(--esp-4); }
  .demo .alternativa { min-height: 46px; }
  .demo .alternativa__letra { width: 32px; height: 32px; border-radius: 10px; font-size: var(--texto-sm); }
  .demo .alternativa__texto { font-size: var(--texto-md); padding-block: 6px; }
  .demo .alternativa__rotulo { padding-block: 5px; }
  .demo .questao__rodape { display: none; }
  .demo__semjs { margin-top: var(--esp-3); font-weight: 700; }
  .demo__fim {
    display: grid; gap: var(--esp-3);
    padding: var(--esp-4);
    border-radius: var(--raio-lg);
    background: var(--acerto-50);
    box-shadow: inset 0 0 0 1.5px var(--acerto-100);
  }
  .demo__fim--erro { background: var(--marca-50); box-shadow: inset 0 0 0 1.5px var(--marca-100); }
  .demo__fim-texto { color: var(--tinta-700); }
  .demo__fim-texto strong { font-family: var(--fonte-display); font-size: var(--texto-lg); color: var(--texto); display: block; }

  /* ------------------------------------------------------------------ NÚMEROS */
  .numeros-faixa { padding: 0 var(--esp-pagina) var(--esp-12); }
  .numeros-faixa__lista {
    display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--esp-3);
    max-width: var(--conteudo-max); margin: 0 auto;
  }
  @media (min-width: 48em) { .numeros-faixa__lista { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--esp-4); } }
  .numero-grande {
    display: flex; flex-direction: column-reverse; justify-content: flex-end; gap: var(--esp-1);
    padding: var(--esp-4) var(--esp-4) var(--esp-5);
    border-radius: var(--raio-xl);
    border: var(--borda-grossa) solid var(--c-100);
    background: var(--c-50);
  }
  .numero-grande__valor {
    margin: 0;
    font-family: var(--fonte-display); font-weight: 800;
    font-size: clamp(2rem, 1.4rem + 3vw, 3.25rem); line-height: 1; letter-spacing: -0.04em;
    color: var(--c-700);
    font-variant-numeric: tabular-nums;
  }
  .numero-grande__prefixo { font-size: 0.6em; vertical-align: 0.35em; margin-right: 1px; }
  .numero-grande__rotulo { font-size: var(--texto-sm); font-weight: 700; color: var(--tinta-700); line-height: 1.3; }
  .numero-grande__nota { color: var(--texto-suave); font-weight: 600; white-space: nowrap; }

  /* ------------------------------------------------------------------ SEÇÕES */
  .secao-publica { padding: var(--esp-12) var(--esp-pagina); }
  .secao-publica--papel { background: var(--papel); border-block: 2px dashed var(--linha-forte); }
  .secao-publica__interno { max-width: var(--conteudo-max); margin-inline: auto; }
  .secao-publica__sobre { font-size: var(--texto-2xs); font-weight: 800; letter-spacing: 0.1em; text-transform: uppercase; color: var(--texto-suave); margin-bottom: var(--esp-2); }
  .secao-publica__titulo { font-size: var(--texto-3xl); max-width: 22ch; margin-bottom: var(--esp-8); }
  @media (min-width: 64em) { .secao-publica { padding-block: var(--esp-16); } }

  .passos { display: grid; gap: var(--esp-4); margin: 0; padding: 0; list-style: none; }
  @media (min-width: 48em) { .passos { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--esp-5); } }
  .passo {
    position: relative;
    display: grid; grid-template-columns: auto 1fr; column-gap: var(--esp-4); row-gap: var(--esp-1);
    padding: var(--esp-5);
    border-radius: var(--raio-xl);
    background: var(--superficie);
    border: var(--borda) solid var(--linha);
    box-shadow: var(--sombra-1);
  }
  .passo__numero {
    position: absolute; top: -12px; right: var(--esp-5);
    display: grid; place-items: center; width: 34px; height: 34px;
    border: 2.5px solid var(--tinta-900); border-radius: 11px;
    background: var(--marca-500); box-shadow: 0 3px 0 var(--tinta-900);
    font-family: var(--fonte-display); font-weight: 800;
    rotate: 6deg;
  }
  .passo__icone {
    grid-row: span 2;
    display: grid; place-items: center; width: 52px; height: 52px;
    border-radius: 18px; background: var(--c-500); color: #fff;
    rotate: -6deg; --icone-tom: rgb(255 255 255 / 0.3);
  }
  .passo__titulo { font-size: var(--texto-lg); align-self: end; }
  .passo__texto { color: var(--tinta-700); font-size: var(--texto-sm); }
  @media (min-width: 48em) {
    .passo { grid-template-columns: 1fr; row-gap: var(--esp-3); }
    .passo__icone { grid-row: auto; }
  }

  .modos {
    display: grid; grid-auto-flow: column; grid-auto-columns: minmax(15.5rem, 80%); gap: var(--esp-3);
    margin: 0 calc(var(--esp-pagina) * -1); padding: var(--esp-2) var(--esp-pagina) var(--esp-4);
    list-style: none; overflow-x: auto; scroll-snap-type: x mandatory; scroll-padding-inline: var(--esp-pagina); scrollbar-width: none;
  }
  .modos::-webkit-scrollbar { display: none; }
  /* no celular a lista rola na horizontal: focável pelo teclado (axe scrollable-region-focusable);
     o anel fica para dentro porque a lista vai de borda a borda */
  .modos:focus-visible { outline-offset: -3px; }
  @media (min-width: 48em) {
    .modos { grid-auto-flow: row; grid-template-columns: repeat(3, minmax(0, 1fr)); margin: 0; padding: 0; overflow: visible; gap: var(--esp-5); }
  }
  .modo {
    scroll-snap-align: start;
    display: grid; gap: var(--esp-2); align-content: start; justify-items: start;
    padding: var(--esp-5);
    border-radius: var(--raio-xl);
    background: var(--c-50);
    border: var(--borda-grossa) solid var(--c-100);
  }
  .modo__icone { display: grid; place-items: center; width: 48px; height: 48px; margin-bottom: var(--esp-2); border-radius: 16px; background: var(--c-500); color: #fff; rotate: -5deg; --icone-tom: rgb(255 255 255 / 0.3); }
  .modo:nth-child(2) .modo__icone { rotate: 4deg; }
  .modo__titulo { font-size: var(--texto-xl); }
  .modo__texto { color: var(--tinta-700); margin-bottom: var(--esp-2); }

  .professores { display: grid; gap: var(--esp-8); align-items: center; }
  @media (min-width: 64em) { .professores { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: var(--esp-12); } }
  .professores__texto { display: grid; gap: var(--esp-4); justify-items: start; }
  .professores__texto .secao-publica__titulo { margin-bottom: 0; }
  .professores__lead { color: var(--tinta-700); font-size: var(--texto-lg); max-width: 46ch; }
  .professores__quadro { position: relative; }
  .professores__cartao { display: grid; gap: var(--esp-3); padding: var(--esp-5); rotate: 1.5deg; box-shadow: var(--sombra-3); }
  .professores__cabeca { display: flex; justify-content: space-between; align-items: flex-start; gap: var(--esp-3); margin-bottom: var(--esp-2); }
  .professores__codigo { font-family: var(--fonte-mono); letter-spacing: 0.1em; min-height: 30px; }
  .professores__linha { display: flex; align-items: center; justify-content: space-between; gap: var(--esp-3); padding-block: var(--esp-2); border-top: 1px solid var(--linha); font-size: var(--texto-sm); }
  .professores__tema { display: grid; grid-template-columns: auto 1fr; align-items: center; gap: var(--esp-2); margin-top: var(--esp-2); padding: var(--esp-2) var(--esp-3); border-radius: var(--raio-sm); background: var(--atencao-50); color: var(--atencao-700); font-size: var(--texto-sm); }

  .fontes-lista { display: flex; flex-wrap: wrap; gap: var(--esp-3); margin: 0; padding: 0; list-style: none; }
  .fonte-selo {
    display: grid; gap: 2px;
    padding: var(--esp-3) var(--esp-4);
    border-radius: var(--raio-lg);
    background: var(--superficie);
    border: var(--borda-grossa) solid var(--c-100);
    box-shadow: inset 5px 0 0 var(--c-500);
    padding-left: calc(var(--esp-4) + 5px);
  }
  .fonte-selo__sigla { font-family: var(--fonte-display); font-weight: 800; font-size: var(--texto-lg); line-height: 1.1; color: var(--c-700); }
  .fonte-selo__meta { font-size: var(--texto-xs); font-weight: 700; color: var(--texto-suave); font-variant-numeric: tabular-nums; }

  .cta-final { padding: var(--esp-16) var(--esp-pagina); }
  .cta-final__interno { display: grid; justify-items: center; gap: var(--esp-4); max-width: 36rem; margin: 0 auto; text-align: center; }
  .cta-final__titulo { font-size: var(--texto-4xl); }
  .cta-final__texto { color: var(--tinta-700); font-size: var(--texto-lg); }
  .cta-final__avatar { rotate: -6deg; box-shadow: 0 0 0 5px var(--superficie), 0 0 0 7px var(--linha-forte); }

  /* revelar na rolagem (publico/landing.js põe .is-visivel; sem JS fica tudo visível) */
  .js-revelar .anima-revelar:not(.is-visivel) { opacity: 0; translate: 0 calc(18px * var(--movimento)); }
  .js-revelar .anima-revelar {
    transition: opacity var(--dur-lenta) var(--ease-saida), translate var(--dur-mola) var(--ease-saida);
    transition-delay: calc(min(var(--i, 0), 8) * 60ms);
  }

  /* ------------------------------------------------------------------ CONTA (entrar, cadastro) */
  .conta {
    display: grid; gap: var(--esp-8);
    max-width: 64rem; margin: 0 auto;
    padding: var(--esp-6) var(--esp-pagina) var(--esp-12);
    align-items: center;
  }
  .conta__lado { display: none; }
  @media (min-width: 60em) {
    .conta { grid-template-columns: minmax(0, 1fr) minmax(0, 28rem); gap: var(--esp-12); padding-block: var(--esp-10) var(--esp-16); }
    .conta__lado { display: grid; gap: var(--esp-6); justify-items: start; }
  }
  .conta__adesivos { position: relative; width: 20rem; height: 15rem; }
  .conta__bicho { position: absolute; box-shadow: 0 0 0 5px var(--superficie), 0 0 0 7px var(--linha-forte), var(--sombra-2); }
  .conta__bicho--1 { left: 3rem; top: 1rem; rotate: -6deg; }
  .conta__bicho--2 { left: 12.5rem; top: 0; rotate: 7deg; }
  .conta__bicho--3 { left: 0; top: 9.5rem; rotate: 4deg; }
  .conta__frase { font-family: var(--fonte-display); font-weight: 800; font-size: var(--texto-3xl); line-height: 1.08; letter-spacing: -0.03em; max-width: 14ch; }
  .conta__lista { display: grid; gap: var(--esp-3); margin: 0; padding: 0; list-style: none; font-size: var(--texto-lg); font-weight: 700; }
  .conta__lista li { display: flex; align-items: center; gap: var(--esp-3); }
  .conta__lista .icone { flex: none; padding: 4px; width: 28px; height: 28px; border-radius: 9px; background: var(--acerto-500); color: #fff; stroke-width: 3; }

  .conta__cartao, .pagina-cartao__corpo, .foco-cartao {
    display: grid; gap: var(--esp-5);
    width: 100%;
    padding: var(--esp-6) var(--esp-5);
    border: var(--borda) solid var(--linha);
    border-radius: var(--raio-xl);
    background: var(--superficie);
    box-shadow: var(--sombra-2);
  }
  @media (min-width: 30em) { .conta__cartao, .pagina-cartao__corpo, .foco-cartao { padding: var(--esp-8); } }
  .conta__titulo { font-size: var(--texto-3xl); line-height: 1.05; }
  .conta__sub { margin-top: calc(var(--esp-3) * -1); color: var(--tinta-700); }
  .conta__rodape { text-align: center; color: var(--texto-suave); font-size: var(--texto-sm); }
  .conta__rodape a { font-weight: 800; }

  .convite-mini { display: flex; align-items: center; gap: var(--esp-3); padding: var(--esp-3); border-radius: var(--raio-lg); background: var(--c-50); box-shadow: inset 0 0 0 1.5px var(--c-100); font-size: var(--texto-sm); }

  .pagina-cartao { max-width: 32rem; margin: 0 auto; padding: var(--esp-6) var(--esp-pagina) var(--esp-12); }
  @media (min-width: 48em) { .pagina-cartao { padding-block: var(--esp-10) var(--esp-16); } }
  .pagina-cartao__corpo--solto { max-width: 30rem; margin: var(--esp-8) auto; }
  .pagina-cartao__ilustracao { display: grid; justify-items: center; }
  .pagina-cartao__ilustracao .vazio__ilustracao { margin: 0; }

  .passos-lista { display: grid; gap: var(--esp-3); margin: 0; padding: 0; list-style: none; }
  .passos-lista__item { display: grid; grid-template-columns: auto 1fr; gap: var(--esp-3); align-items: start; }
  .passos-lista__numero { display: grid; place-items: center; width: 32px; height: 32px; border-radius: 10px; background: var(--tinta-900); color: var(--marca-500); font-family: var(--fonte-display); font-weight: 800; }
  .passos-lista__item p { padding-top: 4px; color: var(--tinta-700); }

  .foco-cartao { justify-items: stretch; }
  .foco-cartao__icone { justify-self: start; display: grid; place-items: center; width: 64px; height: 64px; border-radius: 20px; background: var(--marca-500); border: 2.5px solid var(--tinta-900); box-shadow: 0 4px 0 var(--tinta-900); rotate: -6deg; --icone-tom: var(--superficie); }
  .foco-cartao__avatar { justify-self: center; }

  /* convite */
  .convite__ilustracao { display: grid; justify-items: center; }
  .convite__ilustracao .avatar-grupo { align-items: center; }
  .convite__ilustracao .avatar-grupo > .avatar + .avatar { margin-left: -18px; box-shadow: 0 0 0 4px var(--superficie); }
  .convite__sobre { text-align: center; color: var(--texto-suave); font-weight: 700; margin-bottom: calc(var(--esp-3) * -1); }
  .turma-selo { display: grid; gap: 2px; justify-items: center; padding: var(--esp-4); border-radius: var(--raio-lg); background: var(--c-50); box-shadow: inset 0 -5px 0 var(--c-500), inset 0 0 0 1.5px var(--c-100); text-align: center; }
  .turma-selo__nome { font-size: var(--texto-2xl); }
  .turma-selo__prof { display: inline-flex; align-items: center; gap: 6px; color: var(--c-700); font-weight: 700; }
  .o-que-ve { display: grid; gap: var(--esp-3); }
  @media (min-width: 30em) { .o-que-ve { grid-template-columns: 1fr 1fr; } }
  .o-que-ve__coluna { padding: var(--esp-3) var(--esp-4); border-radius: var(--raio-md); background: var(--papel); font-size: var(--texto-sm); }
  .o-que-ve__titulo { display: flex; align-items: center; gap: var(--esp-2); margin-bottom: var(--esp-1); font-family: var(--fonte-ui); font-size: var(--texto-sm); font-weight: 800; }
  .o-que-ve__titulo .icone { width: 1.1rem; height: 1.1rem; }
  .o-que-ve ul { margin: 0; padding-left: 1.1em; color: var(--tinta-700); }
  .convite__nota { text-align: center; font-size: var(--texto-sm); color: var(--texto-suave); margin-top: calc(var(--esp-2) * -1); }

  /* ------------------------------------------------------------------ TEXTO LEGAL */
  .texto-legal { display: grid; gap: var(--esp-6); max-width: 46rem; margin: 0 auto; padding: var(--esp-8) var(--esp-pagina) var(--esp-16); }
  .texto-legal__cabecalho { display: grid; gap: var(--esp-2); }
  .texto-legal__titulo { font-size: var(--texto-4xl); line-height: 1.02; }
  .texto-legal__data { color: var(--texto-suave); font-size: var(--texto-sm); font-weight: 600; }
  .resumo-legal { padding: var(--esp-5); border-radius: var(--raio-xl); background: var(--superficie); border: var(--borda-carimbo) solid var(--tinta-900); box-shadow: 0 5px 0 var(--tinta-900); }
  .resumo-legal__titulo { font-size: var(--texto-xl); margin-bottom: var(--esp-3); }
  .resumo-legal__lista { display: grid; gap: var(--esp-3); margin: 0; padding: 0; list-style: none; }
  .resumo-legal__lista li { display: grid; grid-template-columns: auto 1fr; gap: var(--esp-3); align-items: center; }
  .resumo-legal__icone { display: grid; place-items: center; width: 38px; height: 38px; border-radius: 12px; background: var(--c-100); color: var(--c-700); }
  .resumo-legal__icone .icone { width: 1.2rem; height: 1.2rem; }
  .texto-legal__sumario { padding: var(--esp-4) var(--esp-5); border-radius: var(--raio-lg); background: var(--papel); border: 1.5px dashed var(--linha-forte); }
  .texto-legal__sumario-titulo { font-size: var(--texto-2xs); font-weight: 800; letter-spacing: 0.08em; text-transform: uppercase; color: var(--texto-suave); margin-bottom: var(--esp-2); }
  .texto-legal__sumario ol { margin: 0; padding-left: 1.3em; columns: 2 12rem; column-gap: var(--esp-6); }
  .texto-legal__sumario li { padding-block: 3px; break-inside: avoid; }
  .texto-legal__sumario a { font-weight: 700; }
  .texto-legal__corpo { font-family: var(--fonte-leitura); font-size: var(--texto-leitura); line-height: var(--altura-leitura); max-width: 66ch; }
  .texto-legal__corpo h2 { margin: var(--esp-8) 0 var(--esp-2); font-size: var(--texto-xl); scroll-margin-top: 88px; }
  .texto-legal__corpo h2:first-child { margin-top: 0; }
  .texto-legal__corpo p, .texto-legal__corpo ul { margin: 0 0 var(--esp-3); }
  .texto-legal__corpo li + li { margin-top: var(--esp-2); }

  /* ------------------------------------------------------------------ ERRO / BLOQUEIO (C2) */
  .pagina-erro { display: grid; justify-items: center; gap: var(--esp-4); max-width: 34rem; margin: 0 auto; padding: var(--esp-10) var(--esp-pagina) var(--esp-16); text-align: center; }
  .pagina-erro--app { padding-top: var(--esp-8); }
  .pagina-erro__ilustracao { position: relative; display: grid; place-items: center; width: 220px; height: 200px; margin-bottom: var(--esp-2); }
  .pagina-erro__ilustracao::before { content: ""; position: absolute; inset: 14px 26px; border-radius: 50%; border: 2.5px dashed var(--linha-forte); }
  .pagina-erro__codigo {
    position: absolute; top: -4px; left: 0; z-index: 1;
    padding: 2px 12px;
    border: 2.5px solid var(--tinta-900); border-radius: var(--raio-md);
    background: var(--marca-500); box-shadow: 0 3px 0 var(--tinta-900);
    font-family: var(--fonte-display); font-weight: 800; font-size: var(--texto-xl);
    rotate: -8deg;
  }
  .pagina-erro__enfeite { position: absolute; right: 4px; bottom: 18px; padding: 8px; width: 48px; height: 48px; border-radius: 16px; background: var(--superficie); box-shadow: var(--sombra-2); color: var(--tinta-700); rotate: 8deg; }
  .pagina-erro__brilho { top: 10px !important; right: 30px !important; left: auto; bottom: auto; }
  .pagina-erro__titulo { font-size: var(--texto-3xl); }
  .pagina-erro__texto { color: var(--tinta-700); font-size: var(--texto-lg); max-width: 40ch; }
  .pagina-erro__detalhe { color: var(--texto-suave); font-size: var(--texto-sm); }
  .pagina-erro__acoes { display: flex; flex-wrap: wrap; justify-content: center; gap: var(--esp-3); margin-top: var(--esp-2); }

  /* ------------------------------------------------------------------ CASAS PROVISÓRIAS */
  .casa-provisoria { display: grid; gap: var(--esp-5); margin-top: var(--esp-4); }
  @container app (min-width: 60rem) { .casa-provisoria { grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr); align-items: start; } }
  .casa-provisoria__meta { display: flex; align-items: center; gap: var(--esp-4); }
  .casa-provisoria__numeros { margin-bottom: var(--esp-5); }
  .casa-provisoria__numeros .numero-destaque__rotulo { display: flex; align-items: center; gap: 6px; }
  .corpo--app .aviso { margin-bottom: var(--esp-4); }
}
