.categories-page{
  width:min(1280px,92%);
  margin-inline:auto;
  padding:92px 0 90px;
}

.categories-hero{
  position:relative;
  isolation:isolate;
  max-width:none;
  margin:0 auto 42px;
  padding-top:4px;
  text-align:center;
}

.categories-hero::before{
  content:"";
  position:absolute;
  inset:-64px -18% auto;
  z-index:-1;
  height:340px;
  background:radial-gradient(ellipse at 50% 15%,rgba(37,99,235,.2),rgba(139,92,246,.07) 44%,transparent 72%);
  filter:blur(18px);
}

.categories-hero .breadcrumbs{
  margin-bottom:24px;
}

.categories-hero h1{
  margin:14px 0 18px;
  font-size:clamp(1.5rem,4vw,3.25rem);
  line-height:1;
  letter-spacing:-.04em;
}

.categories-hero p{
  position:relative;
  z-index:1;
  max-width:none;
  margin:14px auto 0;
  color:var(--text-muted);
  font-size:1.08rem;
  line-height:1.72;
  white-space:nowrap;
}

.categories-search{
  display:flex;
  gap:10px;
  width:min(780px,100%);
  margin:24px auto 0;
  padding:8px;
  border:1px solid rgba(255,255,255,.1);
  border-radius:14px;
  background:rgba(15,15,20,.78);
  box-shadow:var(--shadow-sm);
}

.quick-filter-chips{
  position:relative;
  z-index:2;
  display:flex;
  justify-content:center;
  gap:9px;
  flex-wrap:nowrap;
  width:min(1280px,100%);
  margin:11px auto 0;
  padding:4px 2px 8px;
}

.quick-filter-chips a{
  display:inline-flex;
  align-items:center;
  flex:0 0 auto;
  min-height:34px;
  padding:7px 11px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:999px;
  background:rgba(17,18,23,.72);
  color:#d4d4d8;
  font-size:.8rem;
  font-weight:800;
  transition:transform .22s ease,border-color .22s ease,background .22s ease,color .22s ease;
}

.quick-filter-chips a:hover{
  transform:translateY(-2px);
  border-color:rgba(96,165,250,.42);
  background:rgba(37,99,235,.16);
  color:#fff;
}

.categories-search input{
  flex:1;
  min-width:0;
  border:0;
  outline:0;
  background:transparent;
  color:#fff;
  font:inherit;
  padding:12px 14px;
}

.categories-search input::placeholder{
  color:#71717a;
}

.categories-search button,
.filter-apply{
  border:0;
  border-radius:10px;
  background:var(--accent-gradient);
  color:#fff;
  cursor:pointer;
  font-weight:850;
  padding:10px 16px;
}

.categories-marketplace{
  display:grid;
  grid-template-columns:286px minmax(0,1fr);
  gap:28px;
  align-items:start;
}

.filter-drawer{
  display:none;
}

.categories-sidebar{
  position:sticky;
  top:92px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:16px;
  background:rgba(15,15,20,.82);
  box-shadow:var(--shadow-sm);
  overflow:hidden;
}

.categories-sidebar form{
  display:grid;
  gap:22px;
  padding:20px;
}

.filter-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}

.filter-head h2{
  font-size:1rem;
}

.filter-head a{
  color:#93c5fd;
  font-size:.78rem;
  font-weight:750;
}

.categories-sidebar fieldset{
  display:grid;
  gap:10px;
  margin:0;
  padding:0;
  border:0;
}

.categories-sidebar legend{
  margin-bottom:2px;
  color:#e4e4e7;
  font-size:.78rem;
  font-weight:850;
  letter-spacing:.1em;
  text-transform:uppercase;
}

.categories-sidebar label{
  display:flex;
  align-items:center;
  gap:9px;
  color:#a1a1aa;
  font-size:.88rem;
  line-height:1.35;
}

.categories-sidebar input{
  accent-color:#2563eb;
}

.listing-toolbar{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:18px;
  margin-bottom:22px;
}

.listing-toolbar p{
  color:var(--text-muted);
  margin-top:4px;
}

.sort-form{
  display:flex;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
  justify-content:flex-end;
}

.sort-form label{
  display:flex;
  align-items:center;
  gap:8px;
  color:#a1a1aa;
  font-size:.82rem;
}

.sort-form select{
  min-height:38px;
  border:1px solid rgba(255,255,255,.1);
  border-radius:10px;
  background:#111217;
  color:#fff;
  padding:0 10px;
}

.view-toggle{
  display:flex;
  gap:4px;
  padding:4px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:10px;
  background:rgba(255,255,255,.035);
}

.view-toggle a{
  min-height:30px;
  padding:7px 10px;
  border-radius:8px;
  color:#a1a1aa;
  font-size:.8rem;
  font-weight:800;
}

.view-toggle a.active,
.view-toggle a:hover{
  background:rgba(37,99,235,.18);
  color:#fff;
}

.category-market-grid{
  display:grid;
  gap:18px;
}

.category-market-grid.is-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
}

.category-market-card{
  --cat-accent:#60a5fa;
  display:flex;
  min-width:0;
  border:1px solid rgba(255,255,255,.09);
  border-radius:18px;
  background:linear-gradient(145deg,rgba(24,24,32,.76),rgba(10,10,15,.94));
  box-shadow:var(--shadow-sm);
  overflow:hidden;
  transition:transform .24s ease,border-color .24s ease,box-shadow .24s ease;
}

.category-market-grid.is-grid .category-market-card{
  flex-direction:column;
  min-height:520px;
}

.category-market-grid.is-list .category-market-card{
  min-height:230px;
}

.category-market-card:hover{
  transform:translateY(-6px);
  border-color:color-mix(in srgb,var(--cat-accent) 60%,rgba(255,255,255,.16));
  box-shadow:0 24px 58px rgba(0,0,0,.42),0 0 34px rgba(37,99,235,.14);
}

.category-cover{
  position:relative;
  isolation:isolate;
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  min-height:154px;
  padding:18px;
  overflow:hidden;
  background:radial-gradient(circle at 78% 8%,color-mix(in srgb,var(--cat-accent) 30%,transparent),transparent 42%),linear-gradient(135deg,#111827,#09090b);
}

.category-market-grid.is-list .category-cover{
  flex:0 0 230px;
  min-height:auto;
}

.category-cover::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:linear-gradient(to top,rgba(4,6,14,.62),transparent 62%);
}

.category-cover-icon{
  display:grid;
  place-items:center;
  width:58px;
  height:58px;
  border:1px solid color-mix(in srgb,var(--cat-accent) 45%,rgba(255,255,255,.12));
  border-radius:16px;
  background:rgba(9,9,11,.58);
  color:#fff;
  font-weight:850;
  font-size:1.28rem;
  backdrop-filter:blur(8px);
}

.category-cover-badge{
  align-self:flex-start;
  border:1px solid color-mix(in srgb,var(--cat-accent) 38%,rgba(255,255,255,.1));
  border-radius:999px;
  background:rgba(9,9,11,.62);
  color:#dbeafe;
  font-size:.66rem;
  font-weight:850;
  letter-spacing:.1em;
  padding:6px 9px;
  text-transform:uppercase;
}

.category-card-body{
  display:flex;
  flex:1;
  flex-direction:column;
  gap:13px;
  padding:22px;
}

.category-card-body h3{
  font-size:1.25rem;
  line-height:1.1;
}

.category-card-body h3 a{
  color:#fff;
}

.category-card-body p{
  color:#d4d4d8;
  font-size:.92rem;
  line-height:1.62;
}

.category-metrics{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}

.category-metrics span,
.category-tags span{
  display:inline-flex;
  align-items:center;
  min-height:26px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:999px;
  background:rgba(255,255,255,.035);
  color:#cbd5e1;
  font-size:.75rem;
  font-weight:750;
  padding:5px 9px;
}

.category-tools{
  display:grid;
  gap:5px;
  color:#a1a1aa;
  font-size:.8rem;
  line-height:1.5;
}

.category-tools strong{
  color:#71717a;
  font-size:.7rem;
  letter-spacing:.1em;
  text-transform:uppercase;
}

.category-prompts{
  display:grid;
  gap:7px;
  padding-top:12px;
  border-top:1px solid rgba(255,255,255,.06);
}

.category-prompts strong{
  color:#71717a;
  font-size:.7rem;
  font-weight:850;
  letter-spacing:.1em;
  text-transform:uppercase;
}

.category-prompts a{
  display:-webkit-box;
  color:#dbeafe;
  font-size:.82rem;
  font-weight:700;
  line-height:1.35;
  -webkit-line-clamp:1;
  -webkit-box-orient:vertical;
  overflow:hidden;
  transition:color .22s ease,transform .22s ease;
}

.category-prompts a:hover{
  color:#fff;
  transform:translateX(3px);
}

.category-tags{
  display:flex;
  gap:7px;
  flex-wrap:wrap;
  margin-top:auto;
}

.category-action{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  align-self:flex-start;
  min-height:38px;
  margin-top:2px;
  border:1px solid color-mix(in srgb,var(--cat-accent) 34%,rgba(255,255,255,.08));
  border-radius:9px;
  background:rgba(37,99,235,.1);
  color:#bfdbfe;
  font-size:.82rem;
  font-weight:850;
  padding:9px 14px;
}

.category-action:hover{
  background:var(--accent-gradient);
  color:#fff;
}

.cat-cover-imagens{--cat-accent:#60a5fa}.cat-cover-programacao{--cat-accent:#a78bfa}.cat-cover-marketing{--cat-accent:#fb923c}.cat-cover-negocios{--cat-accent:#2dd4bf}.cat-cover-financas{--cat-accent:#facc15}.cat-cover-estudos{--cat-accent:#6ee7b7}.cat-cover-produtividade{--cat-accent:#22d3ee}.cat-cover-redes{--cat-accent:#f472b6}.cat-cover-vendas{--cat-accent:#22c55e}.cat-cover-chatgpt{--cat-accent:#6ee7b7}.cat-cover-default{--cat-accent:#60a5fa}

.pagination{
  display:flex;
  justify-content:center;
  gap:8px;
  flex-wrap:wrap;
  margin:30px 0 0;
}

.pagination a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:38px;
  min-height:38px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:10px;
  background:#111217;
  color:#cbd5e1;
  font-weight:800;
  padding:8px 11px;
}

.pagination a.active,
.pagination a:hover{
  border-color:rgba(96,165,250,.44);
  background:rgba(37,99,235,.16);
  color:#fff;
}

.categories-empty,
.categories-seo{
  border:1px solid rgba(255,255,255,.08);
  border-radius:18px;
  background:rgba(15,15,20,.56);
  padding:30px;
}

.category-prompt-results{
  margin-top:42px;
  padding-top:34px;
  border-top:1px solid rgba(255,255,255,.08);
}

.prompt-results-toolbar{
  margin-bottom:22px;
}

.category-prompt-grid{
  margin-top:0;
}

.category-prompt-grid.is-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
}

.category-prompt-grid.is-list{
  grid-template-columns:1fr;
}

.category-prompt-grid.is-list .card{
  display:grid;
  grid-template-columns:240px minmax(0,1fr);
  min-height:0;
  height:auto;
}

.category-prompt-grid.is-list .card-image-area{
  height:100%;
  min-height:240px;
  flex-basis:auto;
  border-radius:16px 0 0 16px;
}

.category-prompt-grid.is-list .card-content{
  min-height:240px;
}

.categories-empty.compact{
  min-height:180px;
}

.categories-empty{
  display:grid;
  place-items:center;
  gap:12px;
  min-height:260px;
  text-align:center;
}

.categories-empty p,
.categories-seo p{
  color:var(--text-muted);
  line-height:1.75;
}

.categories-seo{
  margin-top:38px;
}

.categories-seo h2{
  margin-bottom:10px;
  font-size:1.5rem;
}

.category-tools-section{
  margin-top:70px;
}

@media(max-width:1180px){
  .quick-filter-chips{
    flex-wrap:wrap;
  }

  .categories-marketplace{
    grid-template-columns:250px minmax(0,1fr);
  }

  .category-market-grid.is-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .category-prompt-grid.is-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}

@media(max-width:860px){
  .categories-page{
    padding-top:82px;
  }

  .categories-search{
    flex-direction:column;
  }

  .categories-hero p{
    white-space:normal;
  }

  .categories-marketplace{
    display:block;
  }

  .filter-drawer{
    display:block;
    margin-bottom:12px;
  }

  .filter-drawer summary{
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:42px;
    border:1px solid rgba(255,255,255,.1);
    border-radius:12px;
    background:#111217;
    color:#fff;
    cursor:pointer;
    font-weight:850;
    list-style:none;
  }

  .filter-drawer summary::-webkit-details-marker{
    display:none;
  }

  .categories-sidebar{
    display:none;
    position:static;
    margin-bottom:20px;
  }

  .filter-drawer[open]+.categories-sidebar{
    display:block;
  }

  .listing-toolbar{
    align-items:flex-start;
    flex-direction:column;
  }

  .sort-form{
    justify-content:flex-start;
    width:100%;
  }

  .category-market-grid.is-grid,
  .category-market-grid.is-list,
  .category-prompt-grid.is-grid,
  .category-prompt-grid.is-list{
    grid-template-columns:1fr;
  }

  .category-prompt-grid.is-list .card{
    display:flex;
  }

  .category-prompt-grid.is-list .card-image-area{
    min-height:180px;
    height:180px;
    border-radius:16px 16px 0 0;
  }

  .category-market-grid.is-list .category-market-card{
    flex-direction:column;
  }

  .category-market-grid.is-list .category-cover{
    flex:initial;
    min-height:154px;
  }
}

@media(max-width:520px){
  .categories-hero{
    text-align:left;
  }

  .categories-hero .breadcrumbs{
    justify-content:flex-start;
  }

  .quick-filter-chips{
    justify-content:flex-start;
  }

  .sort-form label,
  .sort-form select,
  .view-toggle{
    width:100%;
  }

  .view-toggle a{
    flex:1;
    text-align:center;
  }

  .category-card-body{
    padding:18px;
  }
}
