/* Capas padronizadas dos produtos: plugin = verde garrafa, tema = amarelo marca-texto. */
.cover-wrap { container-type: inline-size; width: 100%; height: 100%; }
.cover {
  position: relative; width: 100%; height: 100%; min-height: 100%;
  display: flex; flex-direction: column; justify-content: space-between;
  padding: 6.5cqi 7cqi;
  background: var(--ink); color: var(--paper);
  overflow: hidden;
}
.cover::before {
  content: ''; position: absolute; inset: 0;
  background-image:
    linear-gradient(rgba(233, 237, 231, .07) 1px, transparent 1px),
    linear-gradient(90deg, rgba(233, 237, 231, .07) 1px, transparent 1px);
  background-size: 9cqi 9cqi;
  background-position: -1px -1px;
}
.cover > * { position: relative; }
.cover-top { display: flex; justify-content: space-between; align-items: center; gap: 4cqi; font: 500 2.7cqi/1 var(--mono); letter-spacing: .12em; text-transform: uppercase; }
.cover-brand { display: inline-flex; align-items: center; gap: 1.8cqi; opacity: .8; white-space: nowrap; overflow: hidden; }
.cover-brand i { width: 2.6cqi; height: 2.6cqi; background: var(--signal); flex: none; }
.cover-kind { background: var(--signal); color: var(--ink); padding: 1.4cqi 2.2cqi; font-weight: 600; flex: none; }
.cover-title {
  font-family: var(--sans); font-weight: 800; font-stretch: 115%;
  font-size: 11.5cqi; line-height: .94; letter-spacing: -.035em;
  text-wrap: balance; overflow-wrap: anywhere;
}
.cover-title.is-long { font-size: 8.6cqi; }
.cover-niche { margin-top: 3.4cqi; font: 500 3.3cqi/1.25 var(--mono); color: var(--signal); letter-spacing: .02em; }
.cover-foot { display: flex; justify-content: space-between; align-items: flex-end; font: 500 2.5cqi/1 var(--mono); letter-spacing: .14em; text-transform: uppercase; }
.cover-foot span:first-child { opacity: .55; }
.cover-foot .cover-badge { opacity: 1; background: var(--paper); color: var(--ink); padding: 1.4cqi 2.2cqi; font-weight: 600; }
.cover-tema .cover-foot .cover-badge { background: var(--ink); color: var(--paper); }
.cover-mark { width: 9cqi; height: 9cqi; background: var(--signal); box-shadow: -2.6cqi -2.6cqi 0 0 rgba(233, 237, 231, .14); }

.cover-tema { background: var(--signal); color: var(--ink); }
.cover-tema::before {
  background-image:
    linear-gradient(rgba(13, 43, 35, .08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(13, 43, 35, .08) 1px, transparent 1px);
}
.cover-tema .cover-brand i, .cover-tema .cover-mark { background: var(--ink); }
.cover-tema .cover-mark { box-shadow: -2.6cqi -2.6cqi 0 0 rgba(13, 43, 35, .16); }
.cover-tema .cover-kind { background: var(--ink); color: var(--signal); }
.cover-tema .cover-niche { color: var(--ink-2); }

/* miniaturas: só o nome */
.cover-sm { padding: 8cqi; justify-content: center; }
.cover-sm .cover-top, .cover-sm .cover-foot, .cover-sm .cover-niche { display: none; }
.cover-sm .cover-title, .cover-sm .cover-title.is-long { font-size: 13cqi; }

.pcard:hover .cover-mark { transform: translate(-1cqi, -1cqi); transition: transform .2s; }

/* filtro de tipo na vitrine */
.kind-filter { display: flex; gap: 8px; flex-wrap: wrap; }
.kind-filter a { text-decoration: none; font: 500 13px var(--mono); padding: 8px 14px; border: 1.5px solid var(--ink); background: var(--card); }
.kind-filter a.is-active { background: var(--ink); color: var(--paper); }
.kind-filter a span { opacity: .6; margin-left: 4px; }
