/* Relay Radio — Live / Up Next schedule strip */
.rr-live-schedule-strip[hidden] { display: none !important; }

.rr-live-schedule-strip {
	--rr-sched-cyan: #23d8ff;
	--rr-sched-purple: #9f63ff;
	--rr-sched-orange: #ff9f35;
	--rr-sched-text: #eef8ff;
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 1.04fr) 1px minmax(0, 1.16fr) auto;
	align-items: stretch;
	min-width: 0;
	min-height: 62px;
	margin-top: -1px;
	border-top: 1px solid rgba(76, 221, 255, .14);
	background:
		radial-gradient(circle at 12% 0%, rgba(24, 210, 255, .09), transparent 34%),
		radial-gradient(circle at 82% 130%, rgba(155, 84, 255, .13), transparent 38%),
		linear-gradient(145deg, rgba(5, 13, 24, .98), rgba(12, 15, 29, .98) 58%, rgba(19, 14, 31, .98));
	box-shadow:
		inset 0 1px 0 rgba(255,255,255,.025),
		inset 0 10px 26px rgba(0,0,0,.10);
	overflow: hidden;
	isolation: isolate;
}

.rr-live-schedule-strip::before {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	height: 1px;
	background: linear-gradient(90deg, rgba(35,216,255,.78), rgba(159,99,255,.52) 52%, rgba(255,159,53,.72));
	box-shadow: 0 0 14px rgba(35,216,255,.13);
	pointer-events: none;
}

.rr-live-schedule-current,
.rr-live-schedule-next {
	position: relative;
	min-width: 0;
}

.rr-live-schedule-current {
	display: grid;
	grid-template-columns: 38px auto minmax(0,1fr) auto;
	grid-template-areas: "avatar kicker copy countdown";
	align-items: center;
	column-gap: 12px;
	padding: 10px 18px 10px 18px;
}

.rr-live-schedule-avatar {
	grid-area: avatar;
	width: 38px;
	height: 38px;
	border-radius: 13px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	border: 1px solid rgba(77,216,255,.18);
	background: linear-gradient(145deg, rgba(10,21,38,.95), rgba(28,18,47,.78));
	box-shadow: inset 0 1px 0 rgba(255,255,255,.06), 0 0 18px rgba(35,216,255,.05);
	color: #eef8ff;
	font-size: 12px;
	font-weight: 900;
	letter-spacing: .04em;
}

.rr-live-schedule-avatar img,
.rr-live-schedule-next-avatar img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.rr-live-schedule-avatar-fallback,
.rr-live-schedule-next-avatar-fallback {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
}

.rr-live-schedule-avatar.has-image,
.rr-live-schedule-next-avatar.has-image {
	padding: 0;
}

.rr-live-schedule-kicker {
	grid-area: kicker;
	display: inline-flex;
	align-items: center;
	gap: 7px;
	align-self: center;
	white-space: nowrap;
	color: rgba(153,236,255,.92);
	font-size: 9px;
	font-weight: 900;
	letter-spacing: .13em;
	text-transform: uppercase;
}

.rr-live-schedule-pulse {
	width: 8px;
	height: 8px;
	flex: 0 0 8px;
	border-radius: 50%;
	background: #6edfff;
	box-shadow: 0 0 0 4px rgba(35,216,255,.08), 0 0 11px rgba(35,216,255,.40);
}

.rr-live-schedule-strip.is-live .rr-live-schedule-pulse,
.rr-live-schedule-strip.is-unscheduled-live .rr-live-schedule-pulse {
	background: radial-gradient(circle at 35% 35%, #fff1ad 0, #ffbc59 38%, #ff8b2c 75%, #f46012 100%);
	box-shadow: 0 0 0 4px rgba(255,159,53,.10), 0 0 13px rgba(255,159,53,.52);
	animation: rr-schedule-live-pulse 1.8s ease-in-out infinite;
}

.rr-live-schedule-copy {
	grid-area: copy;
	min-width: 0;
	display: grid;
	align-content: center;
	gap: 2px;
	white-space: normal;
}

.rr-live-schedule-title {
	min-width: 0;
	max-width: 100%;
	display: inline-block;
	overflow: hidden;
	text-overflow: ellipsis;
	color: var(--rr-sched-text);
	font-size: 13px;
	font-weight: 900;
	line-height: 1.2;
	text-decoration: none;
	transition: color .16s ease, text-shadow .16s ease;
}

.rr-live-schedule-title:hover,
.rr-live-schedule-title:focus {
	color: #fff;
	text-decoration: none;
	text-shadow: 0 0 12px rgba(35,216,255,.20);
	outline: none;
}

.rr-live-schedule-meta {
	display: block;
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	color: rgba(225,239,255,.54);
	font-size: 10px;
	font-weight: 650;
	line-height: 1.2;
}

.rr-live-schedule-countdown,
.rr-live-schedule-next-countdown {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 28px;
	padding: 5px 10px;
	border: 1px solid rgba(255,255,255,.07);
	border-radius: 999px;
	background: rgba(255,255,255,.045);
	box-shadow: inset 0 1px 0 rgba(255,255,255,.035);
	font-size: 9px;
	font-weight: 900;
	letter-spacing: .02em;
	line-height: 1;
	white-space: nowrap;
	font-variant-numeric: tabular-nums;
}

.rr-live-schedule-countdown {
	grid-area: countdown;
	color: #ffd08b;
	border-color: rgba(255,159,53,.16);
	background: linear-gradient(135deg, rgba(255,142,38,.08), rgba(255,255,255,.035));
}

.rr-live-schedule-divider {
	width: 1px;
	align-self: stretch;
	margin: 11px 0;
	background: linear-gradient(180deg, transparent, rgba(106,205,255,.15) 22%, rgba(160,103,255,.18) 76%, transparent);
}

.rr-live-schedule-next {
	display: grid;
	grid-template-columns: 38px minmax(0,1fr) auto;
	align-items: center;
	gap: 10px;
	padding: 9px 15px;
	color: inherit;
	text-decoration: none;
	transition: background .16s ease;
}

.rr-live-schedule-next:hover,
.rr-live-schedule-next:focus {
	color: inherit;
	text-decoration: none;
	background: linear-gradient(90deg, rgba(35,216,255,.025), rgba(159,99,255,.06));
	outline: none;
}

.rr-live-schedule-next-avatar {
	width: 38px;
	height: 38px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	border: 1px solid rgba(77,216,255,.13);
	border-radius: 13px;
	background: linear-gradient(145deg, rgba(24,206,255,.11), rgba(146,83,255,.10));
	box-shadow: inset 0 1px 0 rgba(255,255,255,.04), 0 0 16px rgba(35,216,255,.04);
	color: #70e5ff;
	font-size: 11px;
	font-weight: 900;
	letter-spacing: .04em;
}
.rr-live-schedule-next-avatar-icon { font-size: 11px; }

.rr-live-schedule-next-copy {
	min-width: 0;
	display: grid;
	grid-template-columns: auto minmax(0,1fr);
	grid-template-areas:
		"kicker title"
		"meta meta";
	align-items: baseline;
	column-gap: 8px;
	row-gap: 1px;
}

.rr-live-schedule-next-kicker {
	grid-area: kicker;
	color: #9c75ff;
	font-size: 8px;
	font-weight: 950;
	letter-spacing: .13em;
	text-transform: uppercase;
	white-space: nowrap;
}

.rr-live-schedule-next-copy strong {
	grid-area: title;
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	color: #eef8ff;
	font-size: 12px;
	font-weight: 900;
	line-height: 1.15;
}

.rr-live-schedule-next-copy > span:last-child {
	grid-area: meta;
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	color: rgba(226,239,255,.55);
	font-size: 9px;
	font-weight: 650;
}

.rr-live-schedule-next-countdown {
	color: #a9efff;
	border-color: rgba(35,216,255,.13);
	background: linear-gradient(135deg, rgba(35,216,255,.06), rgba(159,99,255,.07));
}

.rr-live-schedule-open {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 7px;
	min-width: 96px;
	padding: 0 14px;
	border-left: 1px solid rgba(255,255,255,.055);
	background: rgba(255,255,255,.018);
	color: rgba(221,240,255,.67);
	font-size: 9px;
	font-weight: 900;
	letter-spacing: .04em;
	text-decoration: none;
	transition: color .16s ease, background .16s ease;
}

.rr-live-schedule-open:hover,
.rr-live-schedule-open:focus {
	color: #fff;
	background: linear-gradient(180deg, rgba(35,216,255,.045), rgba(159,99,255,.045));
	text-decoration: none;
	outline: none;
}

.rr-live-schedule-open i:first-child { color: #5cddff; }
.rr-live-schedule-open i:last-child { font-size: 8px; opacity: .72; }

/* When nothing scheduled is live, keep the left side intentionally quieter. */
.rr-live-schedule-strip.is-idle .rr-live-schedule-avatar {
	grid-area: avatar;
	width: 38px;
	height: 38px;
	border-radius: 13px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	border: 1px solid rgba(77,216,255,.18);
	background: linear-gradient(145deg, rgba(10,21,38,.95), rgba(28,18,47,.78));
	box-shadow: inset 0 1px 0 rgba(255,255,255,.06), 0 0 18px rgba(35,216,255,.05);
	color: #eef8ff;
	font-size: 12px;
	font-weight: 900;
	letter-spacing: .04em;
}

.rr-live-schedule-avatar img,
.rr-live-schedule-next-avatar img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.rr-live-schedule-avatar-fallback,
.rr-live-schedule-next-avatar-fallback {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
}

.rr-live-schedule-avatar.has-image,
.rr-live-schedule-next-avatar.has-image {
	padding: 0;
}

.rr-live-schedule-kicker { color: rgba(179,218,232,.66); }
.rr-live-schedule-strip.is-idle .rr-live-schedule-pulse {
	background: #546779;
	box-shadow: 0 0 0 4px rgba(105,132,150,.05);
}
.rr-live-schedule-strip.is-idle .rr-live-schedule-title { color: rgba(235,245,255,.80); }

@keyframes rr-schedule-live-pulse {
	0%,100% { transform: scale(.94); box-shadow: 0 0 0 0 rgba(255,159,53,.11), 0 0 10px rgba(255,159,53,.44); }
	50% { transform: scale(1.06); box-shadow: 0 0 0 5px rgba(255,159,53,.02), 0 0 15px rgba(255,159,53,.56); }
}

@media (max-width: 991.98px) {
	.rr-live-schedule-strip {
		grid-template-columns: minmax(0,1fr) 1px minmax(0,1fr);
	}
	.rr-live-schedule-open { display: none; }
	.rr-live-schedule-current { padding-left: 14px; padding-right: 12px; }
	.rr-live-schedule-next { padding-left: 12px; padding-right: 14px; }
	.rr-live-schedule-copy { display: grid; gap: 2px; }
}

@media (max-width: 767.98px) {
	.rr-live-schedule-strip {
		grid-template-columns: 1fr;
		min-height: 0;
	}
	.rr-live-schedule-divider {
		width: auto;
		height: 1px;
		margin: 0 14px;
		background: linear-gradient(90deg, transparent, rgba(106,205,255,.14), rgba(160,103,255,.16), transparent);
	}
	.rr-live-schedule-current {
		grid-template-columns: auto minmax(0,1fr) auto;
		padding: 9px 13px 8px;
		column-gap: 9px;
	}
	.rr-live-schedule-copy { gap: 1px; }
	.rr-live-schedule-title { font-size: 12px; }
	.rr-live-schedule-meta { font-size: 9px; }
	.rr-live-schedule-next {
		grid-template-columns: 30px minmax(0,1fr) auto;
		padding: 8px 13px 9px;
		gap: 8px;
	}
	.rr-live-schedule-next-icon { width: 29px; height: 29px; border-radius: 10px; }
}

@media (max-width: 520px) {
	.rr-live-schedule-current {
		grid-template-columns: auto minmax(0,1fr);
		grid-template-areas:
			"kicker countdown"
			"copy copy";
		row-gap: 5px;
	}
	.rr-live-schedule-countdown { justify-self: end; }
	.rr-live-schedule-next {
		grid-template-columns: 28px minmax(0,1fr);
		grid-template-areas:
			"icon copy"
			"count count";
	}
	.rr-live-schedule-next-icon { grid-area: icon; }
	.rr-live-schedule-next-copy { grid-area: copy; }
	.rr-live-schedule-next-countdown {
		grid-area: count;
		justify-self: start;
		margin-left: 36px;
		min-height: 24px;
		padding: 4px 8px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.rr-live-schedule-strip *,
	.rr-live-schedule-strip *::before,
	.rr-live-schedule-strip *::after {
		animation: none !important;
		transition: none !important;
	}
}


@media (max-width: 900px) {
	.rr-live-schedule-current {
		grid-template-columns: 38px minmax(0,1fr);
		grid-template-areas:
			"avatar kicker"
			"avatar copy"
			"avatar countdown";
		row-gap: 3px;
	}
	.rr-live-schedule-copy {
		grid-column: auto;
		white-space: normal;
		flex-wrap: wrap;
		gap: 4px 8px;
	}
}

@media (max-width: 640px) {
	.rr-live-schedule-current,
	.rr-live-schedule-next {
		padding-left: 12px;
		padding-right: 12px;
	}
}


/* =========================================================
   Live Schedule Strip — compact current-show + live timer polish
   ========================================================= */
.rr-live-schedule-current {
	grid-template-columns: 38px minmax(0,1fr) auto !important;
	grid-template-areas:
		"avatar kicker countdown"
		"avatar copy countdown" !important;
	column-gap: 11px !important;
	row-gap: 2px !important;
}
.rr-live-schedule-current .rr-live-schedule-kicker {
	align-self: end;
}
.rr-live-schedule-current .rr-live-schedule-copy {
	align-self: start;
	min-width: 0;
	gap: 8px;
}
.rr-live-schedule-current .rr-live-schedule-title {
	flex: 0 1 auto;
	max-width: 56%;
}
.rr-live-schedule-current .rr-live-schedule-meta {
	flex: 1 1 auto;
	min-width: 0;
}
.rr-live-schedule-countdown,
.rr-live-schedule-next-countdown {
	min-width: 108px;
	font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
	font-variant-numeric: tabular-nums;
	font-feature-settings: "tnum" 1;
}
.rr-live-schedule-next-countdown {
	min-width: 120px;
}

@media (max-width: 1000px) {
	.rr-live-schedule-current .rr-live-schedule-title {
		max-width: 100%;
	}
	.rr-live-schedule-current .rr-live-schedule-copy {
		flex-wrap: wrap;
		gap: 2px 8px;
	}
	.rr-live-schedule-current .rr-live-schedule-meta {
		flex-basis: 100%;
	}
}

@media (max-width: 760px) {
	.rr-live-schedule-current {
		grid-template-columns: 38px minmax(0,1fr) !important;
		grid-template-areas:
			"avatar kicker"
			"avatar copy"
			"avatar countdown" !important;
	}
	.rr-live-schedule-current .rr-live-schedule-countdown {
		justify-self: start;
		margin-top: 3px;
	}
}


.rr-live-schedule-strip.is-idle .rr-live-schedule-current {
	grid-template-columns: 38px auto minmax(0,1.15fr) auto;
}

.rr-live-schedule-strip.is-idle .rr-live-schedule-title,
.rr-live-schedule-strip.is-unscheduled-live .rr-live-schedule-title {
	max-width: none;
}

@media (max-width: 1200px) {
	.rr-live-schedule-current {
		grid-template-columns: 38px auto minmax(0,1fr);
		grid-template-areas:
			"avatar kicker countdown"
			"avatar copy countdown";
		row-gap: 2px;
	}
	.rr-live-schedule-countdown {
		align-self: center;
	}
}
