/* Axé das 7 Linhas — Refinamento da Biblioteca de Entidades v3.3
   Complementa o estilo global sem alterar a Home. */

.entity-library-hero{
  padding-bottom:72px;
}

.entity-library-tools{
  position:relative;
  z-index:2;
  background:#F9F0E4;
  border-top:1px solid rgba(38,38,37,.12);
  border-bottom:1px solid rgba(38,38,37,.10);
  padding:28px 0 30px;
}

.entity-filterbar{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:28px;
}

.entity-search{
  display:grid;
  gap:10px;
  width:min(680px,100%);
  margin:0;
}

.entity-search > span{
  font-family:Inter,Arial,sans-serif;
  font-size:11px;
  font-weight:800;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:#8B5A0A;
}

.entity-search input{
  width:100%;
  min-height:54px;
  padding:0 18px;
  border:1px solid rgba(38,38,37,.25);
  border-radius:0;
  outline:none;
  background:rgba(255,255,255,.26);
  color:#262625;
  font-family:Inter,Arial,sans-serif;
  font-size:16px;
  box-shadow:none;
  transition:border-color .2s ease, background .2s ease, box-shadow .2s ease;
}

.entity-search input::placeholder{
  color:rgba(38,38,37,.48);
}

.entity-search input:focus{
  border-color:#8B5A0A;
  background:rgba(255,255,255,.48);
  box-shadow:0 0 0 3px rgba(139,90,10,.08);
}

.entity-filters{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:8px;
  padding-bottom:1px;
}

.entity-filter{
  appearance:none;
  -webkit-appearance:none;
  min-height:44px;
  padding:0 17px;
  border:1px solid rgba(38,38,37,.24);
  border-radius:999px;
  background:transparent;
  color:#262625;
  font-family:Inter,Arial,sans-serif;
  font-size:12px;
  font-weight:700;
  letter-spacing:.06em;
  cursor:pointer;
  transition:background .2s ease,color .2s ease,border-color .2s ease,transform .2s ease;
}

.entity-filter:hover{
  border-color:#8B5A0A;
  transform:translateY(-1px);
}

.entity-filter.is-active,
.entity-filter[aria-pressed="true"]{
  background:#262625;
  border-color:#262625;
  color:#F9F0E4;
}

.entity-library{
  position:relative;
  margin-top:0;
  padding-top:86px;
}

.entity-library::before{
  content:"";
  position:absolute;
  top:0;
  left:0;
  right:0;
  height:1px;
  background:rgba(249,240,228,.14);
}

.entity-library .section-head{
  margin-bottom:46px;
}

.entity-grid-rich{
  gap:18px;
}

.entity-card-rich{
  min-height:330px;
  padding:30px;
  border:1px solid rgba(249,240,228,.18);
  background:rgba(255,255,255,.018);
  transition:transform .24s ease,border-color .24s ease,background .24s ease;
}

.entity-card-rich:hover{
  transform:translateY(-4px);
  border-color:rgba(249,240,228,.34);
  background:rgba(255,255,255,.035);
}

.entity-card-rich .entity-number{
  display:block;
  margin-bottom:46px;
  font-family:Inter,Arial,sans-serif;
  font-size:11px;
  font-weight:800;
  letter-spacing:.18em;
  color:rgba(249,240,228,.46);
}

.entity-card-rich h3{
  margin-top:14px;
}

.entity-card-rich p{
  max-width:36ch;
}

.entity-card-rich .entity-link{
  display:inline-block;
  margin-top:auto;
  padding-top:28px;
  font-family:Inter,Arial,sans-serif;
  font-size:11px;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.entity-empty{
  margin:34px 0 0;
  padding:20px 22px;
  border:1px solid rgba(249,240,228,.16);
  color:rgba(249,240,228,.72);
}

@media (max-width:900px){
  .entity-library-hero{padding-bottom:52px;}
  .entity-filterbar{align-items:stretch;flex-direction:column;gap:18px;}
  .entity-search{width:100%;}
  .entity-filters{justify-content:flex-start;}
  .entity-library{padding-top:64px;}
}

@media (max-width:560px){
  .entity-library-tools{padding:22px 0 24px;}
  .entity-search input{min-height:50px;font-size:15px;}
  .entity-filter{min-height:40px;padding:0 14px;font-size:11px;}
  .entity-card-rich{min-height:280px;padding:24px;}
}
