/**
 * TS-VIDEO-CONTROLS v1 — shared player control bar (play/pause, ±10s, scrub,
 * speed 0.5×–2×, mute, full screen). Verbatim from the reference block in
 * Latest Change/before-live-changes/video-*.html; driven by assets/js/tv.js.
 */
.ts-vc-host { position: relative; overflow: hidden; }
.ts-vc { position: absolute; left: 0; right: 0; bottom: 0; z-index: 3; display: flex; align-items: center; gap: 4px; padding: 22px 10px 8px; background: linear-gradient(to top, rgba(0,0,0,.62), rgba(0,0,0,0)); color: #fff; font-family: var(--ff-body, 'Inter', sans-serif); font-size: 11px; line-height: 1; text-align: left; }
.ts-vc button { all: unset; box-sizing: border-box; display: inline-flex; align-items: center; justify-content: center; min-width: 28px; height: 28px; padding: 0 6px; border-radius: 6px; cursor: pointer; color: #fff; font-size: 11px; font-weight: 700; letter-spacing: .02em; }
.ts-vc button:hover { background: rgba(255,255,255,.18); }
.ts-vc button:focus-visible { outline: 2px solid #fff; outline-offset: 1px; }
.ts-vc svg { width: 15px; height: 15px; display: block; }
.ts-vc-time { white-space: nowrap; padding: 0 6px; font-variant-numeric: tabular-nums; opacity: .92; }
.ts-vc-bar { flex: 1; min-width: 40px; height: 16px; display: flex; align-items: center; cursor: pointer; }
.ts-vc-track { position: relative; width: 100%; height: 4px; border-radius: 2px; background: rgba(255,255,255,.35); }
.ts-vc-fill { position: absolute; left: 0; top: 0; bottom: 0; width: 0; border-radius: 2px; background: #fff; }
.ts-vc-fill::after { content: ""; position: absolute; right: -6px; top: 50%; width: 12px; height: 12px; margin-top: -6px; border-radius: 50%; background: #fff; }
.ts-vc-speed { min-width: 38px !important; }
.ts-vc-host.ts-vc-compact .ts-vc-time, .ts-vc-host.ts-vc-compact .ts-vc-mute { display: none; }
.ts-vc-host.ts-vc-playing .play-circle-lg, .ts-vc-host.ts-vc-playing .video-play-btn, .ts-vc-host.ts-vc-playing .search-demo-play { opacity: 0; pointer-events: none; }
.ts-vc-host .video-duration-badge, .ts-vc-host .preview-player-time { display: none; }
.ts-vc-host:fullscreen { border-radius: 0; background: #000; display: flex; align-items: center; justify-content: center; }
.ts-ac-btn { all: unset; box-sizing: border-box; display: inline-flex; align-items: center; justify-content: center; min-width: 30px; height: 30px; padding: 0 6px; border-radius: 6px; cursor: pointer; color: inherit; font-size: 11px; font-weight: 700; flex-shrink: 0; }
.ts-ac-btn:hover { background: rgba(128,128,128,.18); }
.ts-ac-btn:focus-visible { outline: 2px solid currentColor; outline-offset: 1px; }
.ts-ac-btn svg { width: 16px; height: 16px; display: block; }
.ts-ac-speed { min-width: 40px; }
.ts-ac-host { color: var(--ink); flex-wrap: nowrap; }
.ts-ac-host.ts-ac-dark { color: #fff; }
.ts-ac-host .audio-player-bar, .ts-ac-host .audio-wave { cursor: pointer; }
.ts-ac-host .audio-wave span { transition: opacity .15s; }
.ts-ac-host .audio-player-bar-fill { transition: width .2s linear; }
@media (max-width: 480px) { .ts-ac-host .ts-ac-mute { display: none; } }
