.platform-filter { display:flex; align-items:center; gap:10px; flex-wrap:wrap; margin:14px 0; }
.platform-filter__label { color:#516078; font-size:13px; font-weight:700; white-space:nowrap; }
.platform-segment { display:flex; align-items:center; gap:6px; flex-wrap:wrap; min-width:0; }
.platform-segment .chip[data-platform] { min-height:36px; padding:6px 12px; font-size:12px; }
/* Segment chips reuse the card watch-button palette so the filter reads as the same services. */
.platform-segment .chip[data-platform] { border:0; color:#fff; font-weight:750; box-shadow:0 1px 4px #0005; opacity:.45; }
.platform-segment .chip[data-platform="youtube"] { background:#b51c39; }
.platform-segment .chip[data-platform="twitch"] { background:#6441a5; }
.platform-segment .chip[data-platform="all"] { background:linear-gradient(90deg, #b51c39 0 50%, #6441a5 50% 100%); }
.platform-segment .chip[data-platform]:hover { color:#fff; filter:brightness(1.12); }
.platform-segment .chip[data-platform]:focus-visible { outline:3px solid #1261d6; outline-offset:2px; }
.platform-segment .chip[data-platform].active { opacity:1; }
.provider-badge, .stream-card .meta .provider-badge { display:inline-block; font-size:11px; font-weight:700; padding:3px 7px; border-radius:6px; background:#efe5ff; color:#5b21b6; }
.provider-badge--youtube, .stream-card .meta .provider-badge--youtube { background:#fff0f3; color:#ad2842; }
.twitch-status { color:#516078; font-size:13px; margin:10px 0; }
.twitch-status.is-degraded { color:#856013; }
.twitch-favorites-section { margin-top:24px; }

/* Viewport-neutral service choices and a primary hit area without nested links. */
.live-watch-card { position:relative; }
.live-watch-card .card-primary-watch::after { content:''; position:absolute; inset:0; z-index:1; }
.live-watch-card .title-row,.live-watch-card .card-body,.live-watch-card .stream-title { position:static; }
.watch-services { position:absolute; top:6px; left:6px; display:flex; gap:5px; z-index:3; }
.watch-service { display:inline-flex; align-items:center; justify-content:center; min-height:40px; padding:0 10px; border-radius:6px; color:#fff!important; font-size:12px; font-weight:750; text-decoration:none; background:#b51c39; box-shadow:0 1px 4px #0005; }
.watch-service--twitch { background:#6441a5; }
.watch-service:hover { filter:brightness(1.15); }
.watch-service:focus-visible,.live-watch-card .card-primary-watch:focus-visible::after { outline:3px solid #1261d6; outline-offset:2px; }
.live-watch-card .favorite { position:relative; z-index:3; }
