:root{
  --busca-verde:var(--cor-primaria,#176b3a);
  --busca-verde-escuro:var(--cor-primaria-escura,#124c2c);
  --busca-claro:#eef7f1;
  --busca-borda:#cfddd4;
  --busca-texto:#24372c;
}
.hub-finder{
  max-width:760px;margin:22px 0 4px;padding:16px;
  background:#fff;border:1px solid var(--busca-borda);border-radius:14px;
  box-shadow:0 8px 26px rgba(18,76,44,.08);
}
.hub-finder>label{display:block;margin-bottom:8px;color:var(--busca-verde-escuro);font-weight:800}
.hub-finder-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}
.hub-finder-row input[type="search"]{
  width:100%;min-height:48px;padding:11px 14px;border:2px solid #9fb9aa;border-radius:9px;
  color:var(--busca-texto);background:#fff;font:inherit;
}
.hub-finder-row button,.search-submit{
  min-height:48px;padding:10px 18px;border:0;border-radius:9px;background:var(--busca-verde-escuro);
  color:#fff;font:inherit;font-weight:800;cursor:pointer;
}
.hub-finder-help{margin:8px 0 0;color:#53675b;font-size:13px}

.search-page{max-width:1180px;margin:0 auto;padding:0 0 58px;color:var(--busca-texto)}
.search-hero{
  margin-bottom:18px;padding:24px;border:1px solid var(--busca-borda);border-radius:16px;
  background:linear-gradient(135deg,#f8fcf9,#e7f4eb);
}
.search-hero h1{margin:0;color:var(--busca-verde-escuro);font-size:clamp(1.75rem,4vw,2.5rem)}
.search-hero>p{max-width:760px;margin:9px 0 0;color:#486052;line-height:1.6}
.search-form{margin-top:20px}
.search-form label{display:block;margin:0 0 6px;font-weight:800;color:var(--busca-verde-escuro)}
.search-form-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(180px,.7fr) auto;gap:9px}
.search-form input,.search-form select{
  min-height:48px;width:100%;padding:10px 12px;border:2px solid #9fb9aa;border-radius:9px;
  background:#fff;color:var(--busca-texto);font:inherit;
}
.search-suggestions{display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin-top:12px}
.search-suggestions>span{font-size:12px;font-weight:800;color:#5a6d61}
.search-suggestions button{
  padding:6px 10px;border:1px solid #bcd0c3;border-radius:999px;background:#fff;
  color:var(--busca-verde-escuro);font:inherit;font-size:12px;font-weight:700;cursor:pointer;
}
.search-status{margin:16px 0;padding:12px 14px;border-left:4px solid var(--busca-verde);border-radius:8px;background:#f2f7f4;color:#344b3e}
.search-status.is-loading{border-left-color:#ad7410;background:#fff7df}
.search-status.is-error{border-left-color:#a72525;background:#fff0f0;color:#792020}
.search-section{margin-top:24px}
.search-section-head{display:flex;justify-content:space-between;align-items:end;gap:12px;margin-bottom:11px}
.search-section-head h2{margin:0;color:var(--busca-verde-escuro);font-size:1.35rem}
.search-section-head p{margin:4px 0 0;color:#5e7065}
.search-clear{
  border:1px solid #9fb9aa;border-radius:8px;background:#fff;color:var(--busca-verde-escuro);
  padding:8px 12px;font:inherit;font-weight:750;cursor:pointer;
}
.search-topic-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.search-topic-card{
  display:flex;flex-direction:column;gap:5px;min-height:112px;padding:15px;border:1px solid var(--busca-borda);
  border-radius:12px;background:#fff;color:var(--busca-texto);text-decoration:none;
  box-shadow:0 4px 14px rgba(18,76,44,.045);transition:transform .16s ease,border-color .16s ease;
}
.search-topic-card:hover{transform:translateY(-2px);border-color:var(--busca-verde)}
.search-topic-card strong{color:var(--busca-verde-escuro)}
.search-topic-card small{color:#5f7166;line-height:1.45}
.search-topic-card span{margin-top:auto;color:var(--busca-verde);font-size:12px;font-weight:800}
.search-results{display:grid;gap:17px}
.search-group{padding:17px;border:1px solid var(--busca-borda);border-radius:14px;background:#fff}
.search-group-head{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:12px}
.search-group-head h2{margin:0;color:var(--busca-verde-escuro);font-size:1.2rem}
.search-group-head a{color:var(--busca-verde-escuro);font-size:13px;font-weight:800}
.search-result-list{display:grid;gap:9px}
.search-result-card{
  display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:13px;border:1px solid #dde7e0;
  border-radius:10px;background:#fbfdfb;color:var(--busca-texto);text-decoration:none;
}
.search-result-card:hover{border-color:var(--busca-verde);background:var(--busca-claro)}
.search-result-card strong{display:block;color:var(--busca-verde-escuro);overflow-wrap:anywhere}
.search-result-card p{margin:4px 0 0;color:#52655a;line-height:1.45;overflow-wrap:anywhere}
.search-result-card small{display:block;margin-top:6px;color:#6a7a71}
.search-result-action{align-self:center;color:var(--busca-verde-escuro);font-weight:800;white-space:nowrap}
.search-empty{padding:18px;border:1px dashed #a9bdb0;border-radius:10px;background:#f9fbfa;color:#4f6257}
.search-error{padding:12px;border-radius:8px;background:#fff0f0;color:#7d2424}
.search-help{margin-top:22px;padding:16px;border-radius:12px;background:#f3f7f4;color:#465b4e}
.search-help h2{margin:0 0 7px;color:var(--busca-verde-escuro);font-size:1.15rem}
.search-help ul{margin:0;padding-left:20px}
.search-page :focus-visible,.hub-finder :focus-visible,.portal-menu-search-link:focus-visible{
  outline:3px solid #ffbf47!important;outline-offset:3px!important;
}
@media(max-width:820px){
  .search-form-grid{grid-template-columns:1fr}.search-submit{width:100%}
  .search-topic-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:560px){
  .hub-finder-row,.search-topic-grid{grid-template-columns:1fr}
  .hub-finder-row button{width:100%}
  .search-hero{padding:18px 14px}
  .search-section-head,.search-group-head{align-items:flex-start;flex-direction:column}
  .search-result-card{grid-template-columns:1fr}.search-result-action{justify-self:start}
}
@media(prefers-reduced-motion:reduce){
  .search-topic-card{transition:none}.search-topic-card:hover{transform:none}
}
