/* The sports strip for iptvstreams.tv, moved out of css/style.css (11 Nov 2026): the pages with the strip never load
   css/style.css, so the strip showed as raw text on phones. Same rules, same colours. */
/* PPV tape (owner's rule 1): what is on in the app, the header's bottom row (the header is in the page flow, so no spacer).
   This site's own colours. Filled by /js/ppv-tape.js through /api/ppv-tape (vercel.json rewrite to roistream). */
.ppv-tape{display:flex;align-items:center;height:34px;font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;background:#0B1426;color:#F8FAFC;font-size:13px;line-height:34px;overflow:hidden}
.ppv-tape__label{flex:none;display:flex;align-items:center;gap:7px;height:100%;padding:0 12px;background:#0077B6;color:#fff;font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.ppv-tape__label::before{content:"";width:7px;height:7px;border-radius:50%;background:#00B4D8;animation:ppv-pulse 1.6s ease-in-out infinite}
.ppv-tape__view{flex:1;min-width:0;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 16px,#000 calc(100% - 16px),transparent);mask-image:linear-gradient(90deg,transparent,#000 16px,#000 calc(100% - 16px),transparent)}
.ppv-tape__track{display:inline-flex;white-space:nowrap;will-change:transform;animation:ppv-scroll var(--ppv-speed,40s) linear infinite}
.ppv-tape__set{display:inline-flex}
.ppv-tape__item{padding:0 18px;border-right:1px solid rgba(255,255,255,.18)}
.ppv-tape__item time{margin:0 6px;color:#CAF0F8;font-weight:700}
.ppv-tape__live{margin:0 6px;padding:2px 6px;border-radius:4px;background:#DC2626;color:#fff;font-size:10px;font-weight:800;letter-spacing:.05em}
.ppv-tape-gap{height:34px}
.ppv-tape:hover .ppv-tape__track{animation-play-state:paused}
@keyframes ppv-scroll{to{transform:translateX(-50%)}}
@keyframes ppv-pulse{50%{opacity:.25}}
@media (prefers-reduced-motion:reduce){.ppv-tape__track,.ppv-tape__label::before{animation:none}.ppv-tape__view{overflow-x:auto}}
/* The strip is the sticky header's flush bottom row (3 Nov 2026) */
.site-header:has(.ppv-tape){padding-bottom:0}
