.cvb { max-width: 1200px; margin: 0 auto; padding: 24px; }
.cvb__toolbar { display:flex; gap:12px; flex-wrap:wrap; align-items:center; margin-bottom:16px; }
.cvb__search { flex:1; min-width:220px; padding:10px 12px; border:1px solid #ddd; border-radius:12px; }
.cvb__filter, .cvb__sort { padding:10px 12px; border:1px solid #ddd; border-radius:12px; background:#fff; }
.cvb__grid { display:grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap:16px; }
.cvb__card { border:1px solid #eee; border-radius:18px; overflow:hidden; background:#fff; box-shadow: 0 6px 20px rgba(0,0,0,.05); }
.cvb__thumb { aspect-ratio: 16 / 10; background-size:cover; background-position:top center; background-repeat: no-repeat; background-color:#f5f5f5; }
.cvb__body { padding:14px; }
.cvb__meta { display:flex; gap:8px; flex-wrap:wrap; margin-bottom:8px; }
.cvb__pill { font-size:12px; padding:4px 8px; border-radius:999px; border:1px solid #eee; background:#fafafa; }
.cvb__title { font-size:16px; margin: 8px 0 12px 0; }
.cvb__actions { display:flex; gap:10px; }
.cvb__btn { display:inline-flex; justify-content:center; align-items:center; padding:10px 12px; border-radius:12px; border:1px solid #ddd; text-decoration:none; color:inherit; flex:1; }
.cvb__btn--primary { border-color: transparent; background:#111827; color:#fff; }
