/* CanVasc Content — list and detail styles. Colours inherit from the theme. */
.cvc-details { display: grid; grid-template-columns: max-content 1fr; gap: .4rem 1.25rem; margin: 0 0 1.75rem; padding: 1rem 1.25rem; border: 1px solid rgba(0,0,0,.12); border-radius: 8px; }
.cvc-details dt { font-weight: 600; }
.cvc-details dd { margin: 0; }
.cvc-details ul { margin: 0; padding-left: 1.1rem; }
@media (max-width: 600px) { .cvc-details { grid-template-columns: 1fr; } .cvc-details dd { margin-bottom: .5rem; } }

.cvc-filters { display: flex; flex-wrap: wrap; gap: .5rem; align-items: end; margin: 0 0 1.5rem; }
.cvc-filters label { display: flex; flex-direction: column; font-size: .85rem; font-weight: 600; gap: .25rem; }
.cvc-filters input, .cvc-filters select { padding: .45rem .6rem; font: inherit; }

.cvc-list { display: grid; gap: 1.25rem; grid-template-columns: repeat(auto-fill, minmax(min(100%, 300px), 1fr)); margin: 0 0 2rem; padding: 0; list-style: none; }
.cvc-card { border: 1px solid rgba(0,0,0,.12); border-radius: 10px; padding: 1.1rem 1.25rem; display: flex; flex-direction: column; gap: .4rem; background: #fff; }
.cvc-card h3 { margin: 0; font-size: 1.1rem; line-height: 1.3; }
.cvc-card h3 a { text-decoration: none; }
.cvc-meta { font-size: .85rem; opacity: .8; margin: 0; }
.cvc-tags { display: flex; flex-wrap: wrap; gap: .35rem; margin: 0; padding: 0; list-style: none; }
.cvc-tags li { font-size: .75rem; padding: .15rem .55rem; border-radius: 999px; background: rgba(0,0,0,.06); }
.cvc-card p { margin: 0; }
.cvc-card .cvc-more { margin-top: auto; font-weight: 600; }

.cvc-table { width: 100%; border-collapse: collapse; margin: 0 0 2rem; }
.cvc-table th, .cvc-table td { text-align: left; padding: .55rem .6rem; border-bottom: 1px solid rgba(0,0,0,.1); vertical-align: top; }
.cvc-group-heading { margin-top: 2rem; }
.cvc-empty { font-style: italic; }
.cvc-video { position: relative; aspect-ratio: 16 / 9; margin: 0 0 1.5rem; }
.cvc-video iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
