.ycav-grid{
  display:grid;
  grid-template-columns:repeat(var(--ycav-columns,4), minmax(0,1fr));
  gap:24px;
}
.ycav-card{
  background:#fff;
  border:1px solid rgba(0,0,0,.08);
  border-radius:var(--ycav-radius,18px);
  overflow:hidden;
  box-shadow:0 6px 20px rgba(0,0,0,.06);
  transition:transform .2s ease, box-shadow .2s ease;
}
.ycav-card:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(0,0,0,.12)}
.ycav-thumb-wrap{position:relative;display:block;aspect-ratio:16/9;background:#111}
.ycav-thumb{width:100%;height:100%;object-fit:cover;display:block}
.ycav-play{
  position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
  width:56px;height:56px;border-radius:999px;background:rgba(255,255,255,.88);
  color:#111;display:flex;align-items:center;justify-content:center;font-size:22px;
}
.ycav-content{padding:16px}
.ycav-title{margin:0 0 10px 0;font-size:var(--ycav-title-size,15px);line-height:1.35;font-weight:600}
.ycav-title a{color:var(--ycav-accent,#d8a13e);text-decoration:none;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.ycav-meta{display:flex;gap:10px;flex-wrap:wrap;font-size:13px;color:#666}
.ycav-empty{padding:16px;border:1px solid #ddd;border-radius:10px;background:#fff}
@media (max-width: 1024px){.ycav-grid{grid-template-columns:repeat(min(2,var(--ycav-columns,4)), minmax(0,1fr));}}
@media (max-width: 767px){.ycav-grid{grid-template-columns:1fr;gap:18px}}
