/* "Watch next on OTT" box under a post (inc/ott-post-widget.php). */
.ts-ow { margin: 28px 0; padding: 18px 18px 14px; border-radius: 16px; border: 1px solid rgba(127,127,127,.28); background: rgba(127,127,127,.06); --ow-acc: var(--color-accent-blue, #e50914); --ow-muted: #94a3b8; }
.ts-ow-head { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; margin-bottom: 10px; }
.ts-ow-h { margin: 0; font-size: 18px; font-weight: 900; letter-spacing: -.01em; }
.ts-ow-all { font-size: 13px; font-weight: 800; color: var(--ow-acc); text-decoration: none; white-space: nowrap; }
.ts-ow-tabs { display: flex; gap: 6px; margin-bottom: 12px; overflow-x: auto; scrollbar-width: none; }
.ts-ow-tab { appearance: none; cursor: pointer; padding: 6px 14px; border-radius: 999px; border: 1px solid rgba(127,127,127,.35); background: transparent; color: var(--ow-muted); font: inherit; font-size: 13px; font-weight: 800; white-space: nowrap; }
.ts-ow-tab.is-on { background: var(--ow-acc); border-color: transparent; color: #fff; }
.ts-ow-row { list-style: none; margin: 0 0 6px; padding: 2px 2px 8px; display: flex; gap: 12px; overflow-x: auto; scroll-snap-type: x proximity; scrollbar-width: thin; -webkit-overflow-scrolling: touch; }
.ts-ow.is-js .ts-ow-row[hidden] { display: none; }
.ts-ow-card { flex: 0 0 112px; scroll-snap-align: start; }
.ts-ow-card a { display: grid; gap: 5px; color: inherit; text-decoration: none; }
.ts-ow-poster { position: relative; display: block; aspect-ratio: 2 / 3; border-radius: 10px; overflow: hidden; background: rgba(127,127,127,.2); }
.ts-ow-poster img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .2s ease; }
.ts-ow-card a:hover .ts-ow-poster img { transform: scale(1.04); }
.ts-ow-plat { position: absolute; left: 6px; bottom: 6px; max-width: calc(100% - 12px); padding: 2px 7px; border-radius: 6px; background: rgba(5,8,16,.82); color: #fff; font-size: 10px; font-weight: 800; letter-spacing: .02em; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.ts-ow-title { font-size: 13px; font-weight: 800; line-height: 1.25; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.ts-ow-meta { font-size: 11.5px; color: var(--ow-muted); font-weight: 600; }
@media (max-width: 560px) { .ts-ow { padding: 14px 12px 10px; margin: 22px 0; } .ts-ow-card { flex-basis: 98px; } }
@media (prefers-reduced-motion: reduce) { .ts-ow-poster img { transition: none; } }
