/* Páginas de pesquisa (fatos, fontes, itinerário, perguntas, acervo, leitor, busca) na moldura do museu.
   Carregado depois de museu.css: usa as mesmas variáveis (papel, oliva, cáqui, serifas). */
.pesquisa { font-size: 16px; }
.pesquisa main { padding: 1.6rem 2rem 1rem; max-width: 1280px; margin: 0 auto; }
.pesquisa h1 { font-size: 2.2rem; margin: .1rem 0 .6rem; }
.pesquisa h2 { font-size: 1.5rem; margin-top: 2rem; }
.pesquisa h3 { font-size: 1.15rem; margin: 1rem 0 .4rem; }
.pesquisa h1 small, .pesquisa h2 small, .pesquisa h3 small { font-family: var(--versalete); color: var(--tinta-3); font-size: .5em; letter-spacing: .05em; margin-left: .3rem; }
.pesquisa .lead { max-width: 52rem; }
.pesquisa code { background: var(--papel-2); padding: 0 .25em; border-radius: 2px; font-size: .8em; overflow-wrap: anywhere; }
mark { background: #ecd98c; color: inherit; padding: 0 1px; border-radius: 2px; }

/* busca no topo */
.m-busca { display: flex; flex: 1 1 260px; max-width: 420px; }
.m-busca input, .busca-grande input, .busca-grande select { font-family: var(--serifa); font-size: .95rem; padding: .4rem .6rem; border: 1px solid var(--linha); background: #fbf8ef; color: var(--tinta); }
.m-busca input { flex: 1; border-radius: 2px 0 0 2px; min-width: 0; }
.m-busca button, .busca-grande button, .botao { font-family: var(--versalete); letter-spacing: .04em; border: 1px solid var(--oliva); background: var(--oliva); color: var(--papel); padding: 0 .9rem; cursor: pointer; border-radius: 0 2px 2px 0; }
.botao { border-radius: 2px; padding: .35rem 1rem; }
.m-busca button:hover, .busca-grande button:hover, .botao:hover { background: var(--vinho); border-color: var(--vinho); }
.busca-grande { display: flex; margin: 1rem 0 .5rem; max-width: 52rem; }
.busca-grande input { flex: 1; font-size: 1.1rem; padding: .7rem .8rem; border-radius: 2px 0 0 2px; }
.busca-grande select { border-left: 0; }
.aviso { background: #efe2bd; border-bottom: 1px solid var(--caqui); padding: .6rem 2rem; font-size: .9rem; }

/* listas, selos e cartões */
.lista { padding-left: 1.1rem; } .lista li { margin: .3rem 0; }
.selo { display: inline-block; font-family: var(--versalete); font-size: .72rem; letter-spacing: .08em; padding: 0 .45rem; border-radius: 2px;
  border: 1px solid currentColor; vertical-align: middle; line-height: 1.5; background: rgba(255,255,255,.35); }
.selo.ok { color: var(--ok); } .selo.parcial { color: var(--parcial); } .selo.conflito { color: var(--conflito); } .selo.subst, .selo.neutro { color: var(--neutro); }
.cartoes { display: grid; grid-template-columns: repeat(auto-fill, minmax(210px, 1fr)); gap: 1rem; margin: 1.5rem 0; }
.cartao { background: #fbf7ec; border: 1px solid var(--linha); padding: 1rem; text-decoration: none; color: inherit !important; display: flex; flex-direction: column; }
.cartao b { font-family: var(--titulo); font-weight: 400; font-size: 2.1rem; color: var(--oliva); } .cartao small { color: var(--tinta-3); }
.hero { max-width: 900px; }
.rodape-info, .contagem { color: var(--tinta-3); font-size: .85rem; }
.erro { color: var(--conflito); }
.bn-nota { font-size: .85em; color: var(--tinta-3); font-style: italic; }
.bn-aviso { font-size: .9rem; color: var(--tinta-2); border-left: 3px solid var(--caqui); padding: .3rem .8rem; background: rgba(255,255,255,.3); max-width: 52rem; }

/* resultados de busca */
.busca-layout { display: grid; grid-template-columns: 250px 1fr; gap: 1.8rem; }
.filtros fieldset { border: 1px solid var(--linha); margin: 0 0 .7rem; padding: .4rem .6rem; background: #fbf7ec; }
.filtros legend { font-family: var(--versalete); font-size: .85rem; color: var(--tinta-3); } .filtros select { max-width: 100%; width: 100%; font-family: var(--serifa); }
.chk { display: block; font-size: .9rem; } .chk small { color: var(--tinta-3); }
.resultados { list-style: none; padding: 0; max-width: 60rem; }
.res { background: #fbf7ec; border: 1px solid var(--linha); border-left: 3px solid var(--caqui-2); padding: .65rem .9rem; margin-bottom: .7rem; }
.res-meta { font-family: var(--versalete); font-size: .8rem; letter-spacing: .04em; color: var(--tinta-3); }
.res-tit { font-family: var(--titulo); font-size: 1.15rem; display: block; margin: .1rem 0 .2rem; text-decoration: none; }
.snip { font-size: .92rem; color: var(--tinta-2); word-break: break-word; }
.res-pagina .snip, .ocr-snip { font-family: ui-monospace, Menlo, Consolas, monospace; font-size: .8rem; }
.sub-res { list-style: none; padding: 0; margin: .3rem 0 0; } .sub-res li { margin: .25rem 0; padding-left: .2rem; border-top: 1px dotted var(--linha); padding-top: .25rem; }
.aprox-tit { margin-top: 2rem; } .vars { font-size: .8rem; color: var(--tinta-3); } .paginacao { margin: 1rem 0; }

/* leitor */
.pg-leitor main { max-width: none; padding: 1rem 1.5rem 0; }
.leitor-cab h1 { font-size: 1.5rem; margin: .1rem 0 .2rem; } .leitor-meta { font-size: .85rem; color: var(--tinta-3); }
.leitor-barra { display: flex; gap: .4rem; align-items: center; margin: .6rem 0; flex-wrap: wrap; }
.leitor-barra button { font-family: var(--serifa); padding: .2rem .65rem; border: 1px solid var(--linha); background: #fbf7ec; color: var(--tinta); cursor: pointer; border-radius: 2px; }
.leitor-barra button:hover { border-color: var(--oliva); color: var(--oliva); }
.leitor-barra input { font-family: var(--serifa); border: 1px solid var(--linha); background: #fbf8ef; padding: .2rem .4rem; }
.leitor-barra form { display: inline; } .sep { width: 1rem; } .estado { color: var(--tinta-3); font-size: .85rem; font-style: italic; }
.leitor-corpo { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); gap: 1rem; height: calc(100vh - 215px); min-height: 500px; }
.imagem { overflow: auto; background: #3b382c; padding: 12px; text-align: center; border: 1px solid var(--tinta-2); }
.imagem canvas, .imagem img { background: #fff; box-shadow: 0 2px 10px rgba(0,0,0,.45); max-width: none; } .imagem img { width: 100%; }
.aviso-img { color: var(--papel-2); font-size: .85rem; }
.painel { overflow: auto; background: #fbf7ec; border: 1px solid var(--linha); padding: .4rem 1rem; }
.painel-sec h3 { font-size: 1.05rem; margin: .8rem 0 .3rem; }
pre.ocr { white-space: pre-wrap; word-break: break-word; font: 13px/1.5 ui-monospace, Menlo, Consolas, monospace; background: #fffdf6; padding: .7rem; border: 1px solid var(--papel-3); color: #2f2d25; }
.paginas-citadas a { margin-right: .35rem; }

/* fato e fonte */
.fato, .fonte { max-width: 980px; }
.md { background: #fbf7ec; border: 1px solid var(--linha); padding: .4rem 1.2rem; overflow-wrap: anywhere; }
.md table { border-collapse: collapse; font-size: .9rem; } .md th, .md td { border: 1px solid var(--linha); padding: .2rem .4rem; }
.ligacoes { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 1.2rem; margin-top: 1rem; }
.ficha { border-collapse: collapse; background: #fbf7ec; width: 100%; border: 1px solid var(--linha); }
.ficha th { font-family: var(--versalete); text-align: left; vertical-align: top; width: 160px; color: var(--tinta-3); font-weight: 400; padding: .45rem .6rem; border-bottom: 1px solid var(--linha); }
.ficha td { padding: .25rem .6rem; border-bottom: 1px solid var(--linha); overflow-wrap: anywhere; } .ficha td p { margin: .2rem 0; }

/* tabelas (fatos, fontes, itinerário, acervo) */
.tabela { border-collapse: collapse; width: 100%; background: #fbf7ec; font-size: .9rem; }
.tabela th, .tabela td { border-bottom: 1px solid var(--linha); padding: .4rem .5rem; vertical-align: top; text-align: left; }
.tabela th { font-family: var(--versalete); font-weight: 400; letter-spacing: .04em; color: var(--tinta-2); background: var(--papel-2); position: sticky; top: 56px; z-index: 2; }
.tabela tr:hover td { background: rgba(214,196,149,.18); }
.tabela-rolagem { overflow: auto; } .itin td { min-width: 110px; } .itin td p { margin: 0; } .itin tr:target td { background: #efe2bd; }
.filtros-linha { margin: .4rem 0 1rem; font-family: var(--versalete); color: var(--tinta-2); }
.filtros-linha select { font-family: var(--serifa); margin-right: 1rem; border: 1px solid var(--linha); background: #fbf8ef; padding: .2rem; }

/* perguntas: "ajude a responder" */
.intro-perguntas { border-bottom: 1px solid var(--linha); padding-bottom: 1rem; margin-bottom: 1rem; }
.perguntas { padding-left: 2rem; max-width: 980px; }
.perguntas li { margin-bottom: .9rem; } .perguntas li::marker { font-family: var(--titulo); color: var(--oliva); font-size: 1.1rem; }
.perguntas li:target .md { border-color: var(--oliva); box-shadow: 0 0 0 2px rgba(79,90,43,.25); }
.perguntas .md { padding: .1rem .9rem; }

/* faixa para a jornada (início local) */
.faixa-jornada { display: grid; grid-template-columns: 1fr auto; gap: .2rem 1rem; align-items: center; margin: 0 0 1.5rem; padding: 1rem 1.25rem;
  background: #efe4c8; border: 1px solid var(--caqui); border-left: 6px solid var(--oliva); color: var(--tinta) !important; text-decoration: none; }
.faixa-jornada .fj-sobre { font-family: var(--versalete); font-size: .8rem; letter-spacing: .08em; color: var(--tinta-3); }
.faixa-jornada b { font-family: var(--titulo); font-weight: 400; font-size: 1.5rem; }
.faixa-jornada .fj-txt { color: var(--tinta-2); }
.faixa-jornada .fj-ir { grid-column: 2; grid-row: 1 / span 3; font-family: var(--versalete); color: var(--oliva); white-space: nowrap; }

@media (max-width: 900px) {
  .pesquisa main { padding: 1rem; }
  .busca-layout, .leitor-corpo { grid-template-columns: 1fr; height: auto; }
  .imagem { max-height: 70vh; }
  .m-busca { max-width: none; }
}
.contato-perguntas { max-width: 980px; border-top: 1px solid var(--linha); margin-top: 2rem; padding-top: .5rem; }
.contato-perguntas:target { background: #efe2bd; padding: .5rem 1rem; }
