/* 영상 카드 (홈 · 영상 화면 공용). 썸네일은 16:9, 카드 모서리 0, 글자는 줄임표 없이 모두 보인다. */
.vc { display: flex; flex-direction: column; background: var(--card); color: var(--ink); transition: transform 160ms var(--ease-out); }
a.vc:active { transform: scale(0.98); }
.vc-thumb { position: relative; aspect-ratio: 16 / 9; overflow: hidden; background: linear-gradient(160deg, #2a3b62, #0c0f16 75%); }
.vc-thumb img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.vc-cap { position: absolute; left: 12px; top: 10px; font-size: 12px; font-weight: 650; color: rgba(255,255,255,.75); }
.vc-play { position: absolute; right: 10px; bottom: 10px; width: 36px; height: 36px; border-radius: 50%; background: var(--blue); color: #fff; display: grid; place-items: center; }
.vc-play svg { width: 18px; height: 18px; margin-left: 2px; }
.vc-body { position: relative; padding: 14px 14px 16px; display: flex; flex-direction: column; gap: 4px; flex: 1; }
.vc-label { margin: 0; font-size: 13px; font-weight: 700; color: var(--blue); }
.vc-title { margin: 0; font-size: 16px; line-height: 1.35; font-weight: 750; letter-spacing: -0.02em; }
.vc-meta { margin: 0; display: flex; flex-wrap: wrap; gap: 0 8px; font-size: 13px; color: var(--ink-2); }
.vc-meta span + span::before { content: "·"; margin-right: 8px; }
.vc-who { margin: 0; font-size: 13px; color: var(--ink-2); }
.vc-tag { align-self: flex-start; margin-top: 6px; padding: 2px 8px; border: 1.5px dashed var(--ink-2); border-radius: 999px; font-size: 11px; font-weight: 650; color: var(--ink-2); }
.vc-lg .vc-play { width: 52px; height: 52px; right: 14px; bottom: 14px; }
.vc-lg .vc-play svg { width: 24px; height: 24px; }
.vc-lg .vc-body { padding: 18px 20px 20px; gap: 6px; }
.vc-lg .vc-title { font-size: 22px; line-height: 1.3; letter-spacing: -0.03em; }
.vc-lg .vc-meta, .vc-lg .vc-who { font-size: 15px; }
.vc-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
@media (hover: hover) and (pointer: fine) { a.vc:hover .vc-title { text-decoration: underline; text-underline-offset: 3px; } }
