
/* Featured-video carousel (link cards, same-origin posters only) */
.fc { position: relative; margin-top: 1rem; }
.fc__ctrl { display: flex; gap: 0.5rem; justify-content: flex-end; margin-bottom: 0.5rem; }
.fc__btn { min-width: 44px; min-height: 44px; border: 1px solid currentColor; background: transparent; color: inherit; font-size: 1.25rem; line-height: 1; cursor: pointer; border-radius: 4px; }
.fc__btn:disabled { opacity: 0.35; cursor: default; }
.fc__btn:focus-visible, .fc__track:focus-visible, .fc__card a:focus-visible { outline: 3px solid #1a56db; outline-offset: 2px; }
.fc__track { list-style: none; margin: 0; padding: 0 0 0.75rem; display: flex; gap: 1rem; overflow-x: auto; scroll-snap-type: x mandatory; -webkit-overflow-scrolling: touch; overscroll-behavior-x: contain; }
.fc__card { flex: 0 0 min(260px, 78%); scroll-snap-align: start; border: 1px solid rgba(0,0,0,0.15); background: #fff; color: #1e1a18; display: flex; flex-direction: column; }
.fc__poster { display: block; aspect-ratio: 4 / 5; background: #1e1a18; color: #fff; overflow: hidden; }
.fc__poster img { width: 100%; height: 100%; object-fit: cover; display: block; }
.fc__noposter { display: flex; align-items: center; justify-content: center; height: 100%; font-weight: 700; letter-spacing: 0.04em; text-transform: uppercase; padding: 1rem; text-align: center; }
.fc__body { padding: 0.75rem; display: flex; flex-direction: column; gap: 0.35rem; }
.fc__who { font-size: 0.9rem; font-weight: 600; margin: 0; }
.fc__q { font-size: 0.8rem; font-style: italic; margin: 0; }
.fc__watch { font-size: 0.9rem; font-weight: 600; text-decoration: underline; color: inherit; min-height: 24px; }
.fc__empty { border: 1px dashed currentColor; padding: 1rem; margin: 1rem 0; }
.fc__empty p { margin: 0 0 0.5rem; }
.fc-explain { margin-top: 1.25rem; font-size: 0.9rem; line-height: 1.6; }
.fc-explain h4 { margin: 0 0 0.5rem; font-size: 1rem; }
.fc-explain ol { margin: 0 0 0.75rem 1.25rem; padding: 0; }
.fc-note { font-size: 0.85rem; border-left: 3px solid currentColor; padding-left: 0.75rem; margin: 0.75rem 0; }
@media (prefers-reduced-motion: reduce) { .fc__track { scroll-behavior: auto; } }
