/* ============================================================
   BLOG · barra de filtros + grid data-driven (454 artigos)
   Depende dos tokens de style.css (--verde, --lima, --pale...)
   ============================================================ */

/* label acessível, invisível na tela (os filtros usam <label> p/ leitor de tela) */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;
  clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* capa do post sem imagem destacada no WP */
.post .cover-fallback{position:absolute;inset:0;display:grid;place-items:center;
  background:linear-gradient(135deg,var(--verde) 0%,var(--verde700) 100%)}
.post .cover-fallback i{font-size:32px;color:rgba(255,255,255,.35)}

/* ---------- barra de filtros ---------- */
.bfilters{margin:0 0 34px}
.bf-row{display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.bf-row + .bf-row{margin-top:14px}

/* campo de busca */
.bf-search{position:relative;flex:1 1 320px;min-width:260px}
.bf-search i{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:var(--muted);font-size:14px;pointer-events:none}
.bf-search input{width:100%;padding:14px 44px 14px 42px;border:1px solid #dfeae1;border-radius:50px;background:var(--paper);
  font:400 15px/1.2 Poppins,system-ui,sans-serif;color:var(--verde);transition:border-color .2s var(--ease),box-shadow .2s var(--ease)}
.bf-search input::placeholder{color:#9aa8a0}
.bf-search input:focus{outline:none;border-color:var(--lima);box-shadow:0 0 0 4px rgba(114,159,40,.14)}
.bf-clear{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:28px;height:28px;border:0;border-radius:50%;
  background:#e7efe8;color:var(--verde);cursor:pointer;font-size:15px;line-height:1;display:none;place-items:center}
.bf-search.has-val .bf-clear{display:grid}
.bf-clear:hover{background:var(--lima);color:#fff}

/* selects */
.bf-sel{position:relative}
.bf-sel select{appearance:none;-webkit-appearance:none;padding:13px 38px 13px 16px;border:1px solid #dfeae1;border-radius:50px;
  background:var(--paper);font:500 13.5px/1 Poppins,system-ui,sans-serif;color:var(--verde);cursor:pointer;
  transition:border-color .2s var(--ease)}
.bf-sel select:focus{outline:none;border-color:var(--lima);box-shadow:0 0 0 4px rgba(114,159,40,.14)}
.bf-sel::after{content:"\f078";font:900 10px/1 "Font Awesome 5 Free";position:absolute;right:16px;top:50%;
  transform:translateY(-50%);color:var(--muted);pointer-events:none}
.bf-sel[hidden]{display:none}

/* chips de tema */
.bf-temas{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.bf-chip{display:inline-flex;align-items:center;gap:7px;padding:8px 15px;border:1px solid #dfeae1;border-radius:50px;
  background:var(--paper);color:var(--verde);font:600 12.5px/1 Poppins,system-ui,sans-serif;cursor:pointer;
  transition:background .2s var(--ease),border-color .2s var(--ease),color .2s var(--ease),transform .2s var(--ease)}
.bf-chip:hover{border-color:var(--lima);transform:translateY(-1px)}
.bf-chip b{font-weight:500;opacity:.55;font-size:11px}
.bf-chip[aria-pressed="true"]{background:var(--verde);border-color:var(--verde);color:#fff}
.bf-chip[aria-pressed="true"] b{opacity:.7}
.bf-chip.ghost{background:transparent;border-style:dashed;color:var(--muted)}
.bf-chip.ghost:hover{color:var(--verde)}

/* linha de status */
.bf-status{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;
  margin-top:20px;padding-top:16px;border-top:1px solid #e4ede6}
.bf-count{font:500 13.5px/1 Poppins,system-ui,sans-serif;color:var(--muted)}
.bf-count strong{color:var(--verde);font-weight:700}
.bf-reset{border:0;background:none;color:var(--lima-ink);font:600 13px/1 Poppins,system-ui,sans-serif;cursor:pointer;
  display:none;align-items:center;gap:7px}
.bf-reset.on{display:inline-flex}
.bf-reset:hover{text-decoration:underline}

/* ---------- grid ---------- */
.posts.is-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(272px,1fr));gap:24px}
.posts.is-grid .post{flex:none;min-width:0}
.post .date{font:400 12.5px/1 Poppins,system-ui,sans-serif;color:var(--muted);margin-top:auto;padding-top:12px}
.post .body h4{margin:8px 0 0;font-size:16.5px;line-height:1.35}

/* skeleton enquanto o JSON carrega */
.bsk{border:1px solid #dfeae1;border-radius:16px;overflow:hidden;background:var(--paper)}
.bsk .sk-img{aspect-ratio:16/10;background:linear-gradient(100deg,#eaf1ec 30%,#f4f8f5 50%,#eaf1ec 70%);
  background-size:220% 100%;animation:skshine 1.3s infinite linear}
.bsk .sk-line{height:11px;margin:14px 20px;border-radius:6px;background:#eaf1ec}
.bsk .sk-line.w60{width:60%}
@keyframes skshine{to{background-position:-220% 0}}

/* vazio / erro */
.bempty{grid-column:1/-1;text-align:center;padding:64px 20px;color:var(--muted)}
.bempty i{font-size:34px;color:#cddbd0;margin-bottom:14px;display:block}
.bempty h4{color:var(--verde);font-size:19px;margin:0 0 6px}
.bempty button{margin-top:16px}

/* carregar mais */
.bmore{display:flex;justify-content:center;margin-top:40px}
.bmore button{padding:14px 30px;border-radius:50px;border:1px solid var(--verde);background:transparent;color:var(--verde);
  font:700 13.5px/1 Poppins,system-ui,sans-serif;cursor:pointer;transition:background .25s var(--ease),color .25s var(--ease)}
.bmore button:hover{background:var(--verde);color:#fff}
.bmore[hidden]{display:none}

/* destaque do termo buscado */
.post mark{background:rgba(169,207,91,.4);color:inherit;padding:0 2px;border-radius:3px}

@media (max-width:640px){
  .posts.is-grid{grid-template-columns:1fr}
  .bf-row{gap:10px}
  .bf-sel select{width:100%}
  .bf-sel{flex:1 1 100%}
}
