:root {
	--gpl-bg: #050508;
	--gpl-panel: #11131a;
	--gpl-panel-soft: #181b24;
	--gpl-text: #ffffff;
	--gpl-muted: #aeb4c0;
	--gpl-border: rgba(255,255,255,.12);
	--gpl-accent: #e50914;
	--gpl-accent-dark: #b20710;
}

.gpl-streamlearn,
.gpl-streamlearn * {
	box-sizing: border-box;
}

.gpl-streamlearn {
	background: var(--gpl-bg);
	color: var(--gpl-text);
	font-family: inherit;
	padding: 0 0 34px;
	clear: both;
	width: 100%;
}

.gpl-streamlearn a {
	color: inherit;
	text-decoration: none;
}

.gpl-placeholder,
.gpl-notice,
.gpl-empty-card {
	padding: 18px;
	border: 1px solid var(--gpl-border);
	border-radius: 14px;
	background: var(--gpl-panel);
	color: var(--gpl-muted);
}

.gpl-hero {
	min-height: 360px;
	background-color: #0b0d12;
	background-size: cover;
	background-position: center;
	border-radius: 0 0 22px 22px;
	display: flex;
	align-items: center;
	padding: clamp(30px, 6vw, 72px);
	margin-bottom: 28px;
}

.gpl-detail-hero {
	border-radius: 22px;
	margin: 0 clamp(6px, 1vw, 12px) 28px;
}

.gpl-hero-content {
	max-width: 720px;
}

.gpl-kicker,
.gpl-card-badge,
.gpl-inline-badge {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .06em;
	text-transform: uppercase;
	color: #fff;
	background: rgba(229, 9, 20, .95);
	border-radius: 999px;
	padding: 6px 10px;
}

.gpl-inline-badge {
	margin-left: 10px;
	font-size: 10px;
	padding: 4px 8px;
}

.gpl-hero h1 {
	font-size: clamp(34px, 6vw, 70px);
	line-height: 1;
	margin: 18px 0 14px;
	color: #fff;
}

.gpl-hero p {
	font-size: clamp(15px, 2vw, 19px);
	line-height: 1.55;
	color: #eef0f4;
	margin: 0 0 24px;
}

.gpl-actions,
.gpl-player-actions,
.gpl-locked-actions {
	display: flex;
	align-items: center;
	gap: 12px;
	flex-wrap: wrap;
}

.gpl-button,
.gpl-streamlearn button.gpl-button,
.gpl-locked-box .gpl-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 42px;
	padding: 11px 18px;
	border-radius: 8px;
	border: 1px solid transparent;
	font-weight: 800;
	line-height: 1;
	cursor: pointer;
	transition: transform .16s ease, background .16s ease, border-color .16s ease;
}

.gpl-button:hover,
.gpl-streamlearn button.gpl-button:hover {
	transform: translateY(-1px);
}

.gpl-button-primary {
	background: var(--gpl-accent);
	color: #fff !important;
}

.gpl-button-primary:hover {
	background: var(--gpl-accent-dark);
}

.gpl-button-secondary {
	background: rgba(255,255,255,.12);
	border-color: var(--gpl-border);
	color: #fff !important;
}

.gpl-row {
	position: relative;
	margin: 0 0 30px;
	padding: 0 clamp(16px, 3vw, 46px);
}

.gpl-row-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
	margin: 0 0 10px;
}

.gpl-row h2,
.gpl-season-section h2,
.gpl-access-panel h2 {
	font-size: clamp(21px, 2.4vw, 30px);
	line-height: 1.15;
	margin: 0;
	color: #fff;
}

.gpl-row-controls {
	display: flex;
	align-items: center;
	gap: 8px;
}

.gpl-row-see-all {
	font-size: 13px;
	font-weight: 800;
	color: #d9dde7 !important;
	padding: 6px 8px;
	border-radius: 7px;
}

.gpl-row-see-all:hover {
	background: rgba(255,255,255,.08);
}

.gpl-row-arrow {
	width: 34px;
	height: 34px;
	border-radius: 50%;
	border: 1px solid var(--gpl-border);
	background: rgba(255,255,255,.09);
	color: #fff;
	font-size: 25px;
	line-height: 1;
	cursor: pointer;
}

.gpl-card-row {
	display: flex;
	gap: 10px;
	overflow-x: auto;
	overflow-y: visible;
	scroll-snap-type: x proximity;
	padding: 4px 0 42px;
	-webkit-overflow-scrolling: touch;
	scroll-behavior: smooth;
}

.gpl-card-row::-webkit-scrollbar {
	height: 0;
}

.gpl-card {
	position: relative;
	flex: 0 0 calc((100% - 50px) / 6);
	min-width: 190px;
	max-width: 300px;
	scroll-snap-align: start;
	background: var(--gpl-panel);
	border: 1px solid var(--gpl-border);
	border-radius: 8px;
	overflow: visible;
	transition: transform .18s ease, z-index .18s ease;
	z-index: 1;
}

.gpl-card > a {
	display: block;
	overflow: hidden;
	border-radius: 8px;
	background: var(--gpl-panel);
}

.gpl-card:hover {
	transform: translateY(-4px);
	z-index: 20;
}

.gpl-card-image {
	position: relative;
	aspect-ratio: 16 / 9;
	background-size: cover;
	background-position: center;
	background-color: #1a1d26;
}

.gpl-card-image:after {
	content: '';
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, transparent 38%, rgba(0,0,0,.72));
}

.gpl-card-badge {
	position: absolute;
	left: 9px;
	bottom: 9px;
	z-index: 2;
	font-size: 9px;
	padding: 4px 7px;
	background: rgba(229,9,20,.94);
}

.gpl-card-locked .gpl-card-badge {
	background: rgba(229,9,20,.94);
}

.gpl-play-icon {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	z-index: 2;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	background: rgba(255,255,255,.2);
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 22px;
	padding-left: 3px;
}

.gpl-progress {
	position: absolute;
	left: 9px;
	right: 9px;
	bottom: 0;
	height: 4px;
	background: rgba(255,255,255,.24);
	z-index: 3;
}

.gpl-progress span {
	display: block;
	height: 100%;
	background: var(--gpl-accent);
}

.gpl-card-body {
	padding: 11px 12px 13px;
}

.gpl-card h3 {
	font-size: 15px;
	line-height: 1.25;
	margin: 0 0 7px;
	color: #fff;
}

.gpl-card p {
	font-size: 13px;
	line-height: 1.45;
	margin: 0 0 10px;
	color: var(--gpl-muted);
}

.gpl-card-meta {
	font-size: 12px;
	color: #d7dbe3;
}

.gpl-card-action {
	position: absolute;
	top: 8px;
	right: 8px;
	z-index: 30;
	border: 1px solid rgba(255,255,255,.25);
	border-radius: 999px;
	background: rgba(0,0,0,.68);
	color: #fff;
	font-size: 11px;
	padding: 6px 9px;
	cursor: pointer;
}

.gpl-hover-card {
	display: none;
	position: absolute;
	left: 50%;
	top: -18px;
	transform: translateX(-50%);
	width: min(360px, 130%);
	background: #151821;
	border: 1px solid rgba(255,255,255,.18);
	border-radius: 12px;
	box-shadow: 0 18px 55px rgba(0,0,0,.55);
	overflow: hidden;
	z-index: 50;
	padding-bottom: 14px;
}

.gpl-card:hover .gpl-hover-card {
	display: block;
}

.gpl-hover-thumb {
	position: relative;
	aspect-ratio: 16 / 9;
	background-size: cover;
	background-position: center;
	background-color: #222632;
}

.gpl-hover-actions {
	display: flex;
	align-items: center;
	gap: 9px;
	padding: 12px 14px 8px;
}

.gpl-hover-actions button,
.gpl-hover-play {
	width: 34px;
	height: 34px;
	border-radius: 50%;
	border: 1px solid rgba(255,255,255,.32);
	background: rgba(255,255,255,.08);
	color: #fff;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-weight: 800;
	cursor: pointer;
}

.gpl-hover-card strong,
.gpl-hover-card p {
	display: block;
	padding: 0 14px;
}

.gpl-hover-card strong {
	font-size: 15px;
	margin-bottom: 6px;
}

.gpl-hover-card p {
	font-size: 12px;
	color: var(--gpl-muted);
	line-height: 1.4;
}

.gpl-row-ranked-features .gpl-card-row {
	gap: 24px;
	align-items: flex-end;
}

.gpl-ranked-card {
	position: relative;
	flex: 0 0 250px;
	height: 185px;
	display: flex;
	align-items: flex-end;
}

.gpl-rank-number {
	position: absolute;
	left: 0;
	bottom: -7px;
	font-size: 170px;
	font-weight: 900;
	line-height: .8;
	-webkit-text-stroke: 4px rgba(255,255,255,.28);
	color: transparent;
	z-index: 1;
}

.gpl-ranked-card a {
	position: relative;
	z-index: 2;
	margin-left: 70px;
	width: 180px;
}

.gpl-ranked-thumb {
	position: relative;
	aspect-ratio: 16 / 9;
	background-size: cover;
	background-position: center;
	border-radius: 7px;
	overflow: hidden;
	box-shadow: 0 15px 35px rgba(0,0,0,.45);
}

.gpl-ranked-card h3 {
	font-size: 13px;
	margin: 8px 0 0;
	color: #fff;
}

.gpl-season-section,
.gpl-access-panel,
.gpl-player-header,
.gpl-player,
.gpl-episode-nav {
	margin: 0 clamp(16px, 3vw, 48px) 28px;
}

.gpl-seasons,
.gpl-access-panel {
	max-width: 1100px;
}

.gpl-season {
	background: var(--gpl-panel);
	border: 1px solid var(--gpl-border);
	border-radius: 16px;
	padding: 18px;
	margin: 18px 0;
}

.gpl-season-header h3 {
	font-size: 21px;
	margin: 0 0 8px;
	color: #fff;
	display: inline-flex;
	align-items: center;
}

.gpl-season-header p {
	color: var(--gpl-muted);
	margin: 0 0 15px;
}

.gpl-episode-list {
	display: grid;
	gap: 10px;
}

.gpl-episode-item {
	background: rgba(255,255,255,.035);
	border: 1px solid var(--gpl-border);
	border-radius: 14px;
	overflow: hidden;
}

.gpl-episode-item a {
	display: grid;
	grid-template-columns: 180px 1fr;
	min-height: 110px;
}

.gpl-episode-thumb {
	position: relative;
	background-size: cover;
	background-position: center;
	background-color: #20232d;
}

.gpl-episode-thumb span {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	background: rgba(0,0,0,.68);
	border: 1px solid rgba(255,255,255,.25);
	border-radius: 999px;
	padding: 8px 13px;
	font-weight: 800;
	font-size: 12px;
}

.gpl-episode-info {
	padding: 17px;
}

.gpl-episode-info h4 {
	font-size: 18px;
	margin: 0 0 8px;
	color: #fff;
}

.gpl-episode-info p,
.gpl-episode-meta {
	color: var(--gpl-muted);
	font-size: 13px;
}

.gpl-player-header {
	padding-top: 6px;
}

.gpl-player-kicker,
.gpl-player-kicker a {
	color: #b9c7ff;
	font-weight: 800;
}

.gpl-player-header h1 {
	font-size: clamp(34px, 5vw, 58px);
	margin: 8px 0 14px;
	color: #fff;
}

.gpl-video-wrap {
	width: min(1120px, 100%);
	aspect-ratio: 16 / 9;
	background: #000;
	border: 1px solid var(--gpl-border);
	border-radius: 16px;
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #b9c7ff;
}

.gpl-video-wrap iframe,
.gpl-video-wrap video {
	width: 100%;
	height: 100%;
	display: block;
}

.gpl-player-actions {
	margin-top: 18px;
}

.gpl-episode-nav {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	max-width: 1120px;
}

.gpl-access-panel {
	background: var(--gpl-panel);
	border: 1px solid var(--gpl-border);
	border-radius: 18px;
	padding: clamp(22px, 4vw, 42px);
}

.gpl-access-group {
	margin-top: 24px;
}

.gpl-access-group h3 {
	font-size: 22px;
	margin: 0 0 8px;
	color: #fff;
}

.gpl-access-group p {
	color: var(--gpl-muted);
	margin: 0 0 16px;
}

.gpl-access-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
	gap: 12px;
}

.gpl-access-card {
	display: grid;
	gap: 8px;
	padding: 18px;
	border: 1px solid var(--gpl-border);
	border-radius: 14px;
	background: var(--gpl-panel-soft);
	transition: transform .16s ease, border-color .16s ease;
}

.gpl-access-card:hover {
	transform: translateY(-2px);
	border-color: rgba(255,255,255,.3);
}

.gpl-access-duration {
	font-weight: 900;
	font-size: 15px;
	text-transform: uppercase;
}

.gpl-access-title {
	color: var(--gpl-muted);
	font-size: 13px;
}

.gpl-access-price {
	font-size: 22px;
	font-weight: 900;
}

@media (max-width: 1100px) {
	.gpl-card {
		flex-basis: calc((100% - 30px) / 4);
	}
}

@media (max-width: 760px) {
	.gpl-hero {
		min-height: 300px;
		padding: 28px 20px;
	}

	.gpl-card {
		flex-basis: 230px;
	}

	.gpl-hover-card {
		display: none !important;
	}

	.gpl-row-arrow {
		display: none;
	}

	.gpl-episode-item a {
		grid-template-columns: 1fr;
	}

	.gpl-episode-thumb {
		aspect-ratio: 16 / 9;
	}

	.gpl-episode-nav {
		align-items: stretch;
		flex-direction: column;
	}

	.gpl-ranked-card {
		flex-basis: 220px;
	}
}


/* StreamLearn row/card cleanup */
.gpl-library-v2 .gpl-row {
	margin-bottom: 34px;
}

.gpl-library-v2 .gpl-card-row {
	gap: 16px;
	padding: 4px 0 18px;
}

.gpl-library-v2 .gpl-card {
	flex: 0 0 calc((100% - 80px) / 6);
	min-width: 230px;
	max-width: none;
	border-radius: 12px;
	overflow: hidden;
	background: #11141c;
}

.gpl-library-v2 .gpl-card > a,
.gpl-library-v2 .gpl-episode-card-link {
	display: block;
	height: 100%;
	border-radius: 12px;
	overflow: hidden;
}

.gpl-library-v2 .gpl-card:hover {
	transform: translateY(-3px) scale(1.015);
}

.gpl-library-v2 .gpl-card-image:after {
	background: linear-gradient(180deg, rgba(0,0,0,0) 48%, rgba(0,0,0,.58) 100%);
}

.gpl-library-v2 .gpl-card-body {
	min-height: 82px;
	padding: 12px 14px 14px;
	background: #12151d;
}

.gpl-library-v2 .gpl-card h3 {
	font-size: 15px;
	line-height: 1.25;
	margin-bottom: 8px;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.gpl-library-v2 .gpl-card-meta {
	display: block;
	font-size: 12px;
	color: #c7ccd6;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.gpl-library-v2 .gpl-card-play {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%) scale(.92);
	z-index: 4;
	width: 42px;
	height: 42px;
	border-radius: 50%;
	background: rgba(0,0,0,.58);
	border: 1px solid rgba(255,255,255,.42);
	color: #fff;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 17px;
	padding-left: 2px;
	opacity: 0;
	transition: opacity .16s ease, transform .16s ease;
}

.gpl-library-v2 .gpl-card:hover .gpl-card-play {
	opacity: 1;
	transform: translate(-50%, -50%) scale(1);
}

.gpl-library-v2 .gpl-episode-card .gpl-hover-card,
.gpl-library-v2 .gpl-episode-card .gpl-mark-watched,
.gpl-library-v2 .gpl-episode-card .gpl-hover-actions {
	display: none !important;
}

.gpl-library-v2 .gpl-play-icon {
	display: none !important;
}

.gpl-library-v2 .gpl-card-action.gpl-hide-continue {
	top: 8px;
	right: 8px;
	font-size: 10px;
	padding: 5px 8px;
}

.gpl-library-v2 .gpl-row-header {
	margin-bottom: 12px;
}

.gpl-library-v2 .gpl-row-controls {
	gap: 6px;
}

.gpl-library-v2 .gpl-row-arrow {
	width: 34px;
	height: 34px;
	border-radius: 8px;
	border-color: rgba(229,9,20,.65);
	background: rgba(229,9,20,.12);
	color: #fff;
	font-size: 22px;
}

.gpl-library-v2 .gpl-row-see-all {
	margin-right: 6px;
	font-size: 14px;
}

.gpl-library-v2 .gpl-progress {
	left: 0;
	right: 0;
	bottom: 0;
	height: 3px;
	background: rgba(255,255,255,.25);
}

@media (max-width: 1200px) {
	.gpl-library-v2 .gpl-card {
		flex-basis: calc((100% - 48px) / 4);
	}
}

@media (max-width: 780px) {
	.gpl-library-v2 .gpl-card {
		flex-basis: 72vw;
		min-width: 240px;
	}
}

/* StreamLearn row/card interaction fix */
.gpl-library-v2 .gpl-row {
	position: relative;
	overflow: visible;
	padding-right: clamp(16px, 2vw, 38px);
}

.gpl-library-v2 .gpl-card-row {
	overflow-x: auto;
	overflow-y: visible;
	scrollbar-width: none;
	-ms-overflow-style: none;
	padding: 8px 0 34px;
	margin-bottom: -18px;
}

.gpl-library-v2 .gpl-card-row::-webkit-scrollbar {
	display: none;
	width: 0;
	height: 0;
}

.gpl-library-v2 .gpl-row-header {
	align-items: center;
	margin-bottom: 8px;
}

.gpl-library-v2 .gpl-row-controls {
	position: relative;
	z-index: 25;
	display: flex;
	align-items: center;
	gap: 5px;
}

.gpl-library-v2 .gpl-row-arrow {
	width: 30px;
	height: 30px;
	border-radius: 6px;
	font-size: 19px;
	line-height: 1;
	padding: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.gpl-library-v2 .gpl-card {
	transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
	transform-origin: center center;
}

.gpl-library-v2 .gpl-card:hover {
	transform: scale(1.11);
	z-index: 80;
	box-shadow: 0 22px 60px rgba(0,0,0,.62);
	border-color: rgba(255,255,255,.32);
}

.gpl-library-v2 .gpl-card-play,
.gpl-library-v2 .gpl-play-icon {
	display: none !important;
}

.gpl-library-v2 .gpl-card-body {
	min-height: 76px;
}

.gpl-library-v2 .gpl-card h3 {
	font-size: 14px;
}

.gpl-library-v2 .gpl-card-meta {
	font-size: 11px;
}

/* StreamLearn forced row interaction v1.0.3 */
.gpl-streamlearn.gpl-library-v2 .gpl-row {
	position: relative !important;
	padding: 0 42px 26px 42px !important;
	margin: 0 0 34px !important;
	overflow: visible !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-header {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	margin: 0 0 14px !important;
	padding-right: 18px !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-top-actions {
	display: flex !important;
	align-items: center !important;
	gap: 14px !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-controls {
	display: contents !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-card-row {
	display: flex !important;
	gap: 14px !important;
	overflow-x: auto !important;
	overflow-y: visible !important;
	scroll-behavior: smooth !important;
	scrollbar-width: none !important;
	-ms-overflow-style: none !important;
	padding: 8px 0 34px !important;
	margin: 0 !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-card-row::-webkit-scrollbar {
	display: none !important;
	width: 0 !important;
	height: 0 !important;
	background: transparent !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-arrow {
	position: absolute !important;
	top: 52% !important;
	transform: translateY(-50%) !important;
	z-index: 200 !important;
	width: 42px !important;
	height: 76px !important;
	border-radius: 8px !important;
	border: 1px solid rgba(255,255,255,.24) !important;
	background: rgba(0,0,0,.72) !important;
	color: #fff !important;
	font-size: 34px !important;
	line-height: 1 !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	cursor: pointer !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-prev {
	left: 0 !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-next {
	right: 0 !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-arrow:hover {
	background: rgba(229,9,20,.92) !important;
	border-color: rgba(229,9,20,.92) !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-card {
	flex: 0 0 calc((100% - 70px) / 6) !important;
	min-width: 245px !important;
	max-width: 320px !important;
	transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease !important;
	transform-origin: center center !important;
	will-change: transform !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-card:hover {
	transform: scale(1.18) translateY(-10px) !important;
	z-index: 300 !important;
	box-shadow: 0 28px 80px rgba(0,0,0,.78) !important;
	border-color: rgba(255,255,255,.38) !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-card-play,
.gpl-streamlearn.gpl-library-v2 .gpl-play-icon,
.gpl-streamlearn.gpl-library-v2 .gpl-hover-actions,
.gpl-streamlearn.gpl-library-v2 .gpl-mark-watched {
	display: none !important;
}

@media (max-width: 1024px) {
	.gpl-streamlearn.gpl-library-v2 .gpl-card {
		flex-basis: 32vw !important;
	}
}

@media (max-width: 767px) {
	.gpl-streamlearn.gpl-library-v2 .gpl-row {
		padding-left: 16px !important;
		padding-right: 16px !important;
	}
	.gpl-streamlearn.gpl-library-v2 .gpl-row-arrow {
		display: none !important;
	}
	.gpl-streamlearn.gpl-library-v2 .gpl-card {
		flex-basis: 74vw !important;
		min-width: 240px !important;
	}
}

/* StreamLearn row layout refinement v1.0.4 */
.gpl-streamlearn.gpl-library-v2 {
    overflow-x: hidden !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row {
    position: relative !important;
    margin: 0 0 44px !important;
    padding: 0 clamp(24px, 2.2vw, 44px) !important;
    overflow: visible !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-header {
    margin: 0 0 14px !important;
    padding: 0 !important;
    min-height: 32px !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-strip {
    position: relative !important;
    overflow: visible !important;
    min-height: 0 !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-card-row {
    display: flex !important;
    gap: 14px !important;
    overflow-x: auto !important;
    overflow-y: visible !important;
    scroll-behavior: smooth !important;
    scrollbar-width: none !important;
    -ms-overflow-style: none !important;
    padding: 8px 0 18px !important;
    margin: 0 !important;
    min-height: 0 !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-card-row::-webkit-scrollbar {
    display: none !important;
    width: 0 !important;
    height: 0 !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-card {
    flex: 0 0 calc((100% - 70px) / 6) !important;
    min-width: 245px !important;
    max-width: 320px !important;
    border-radius: 12px !important;
    overflow: visible !important;
    transform-origin: center center !important;
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease !important;
    z-index: 1 !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-card > a,
.gpl-streamlearn.gpl-library-v2 .gpl-episode-card-link {
    overflow: hidden !important;
    border-radius: 12px !important;
    background: #11141c !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-card:hover {
    transform: scale(1.16) translateY(-8px) !important;
    z-index: 500 !important;
    box-shadow: 0 28px 85px rgba(0,0,0,.82) !important;
    border-color: rgba(255,255,255,.38) !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-card-image {
    aspect-ratio: 16 / 9 !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-card-body {
    min-height: 74px !important;
    padding: 12px 14px 13px !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-arrow {
    position: absolute !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    z-index: 700 !important;
    width: 38px !important;
    height: 68px !important;
    border-radius: 8px !important;
    border: 1px solid rgba(255,255,255,.22) !important;
    background: rgba(0,0,0,.72) !important;
    color: #fff !important;
    font-size: 32px !important;
    line-height: 1 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    opacity: .92 !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-prev {
    left: -19px !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-next {
    right: -19px !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-arrow:hover {
    background: rgba(229,9,20,.95) !important;
    border-color: rgba(229,9,20,.95) !important;
    opacity: 1 !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-arrow.is-hidden,
.gpl-streamlearn.gpl-library-v2 .gpl-row-arrow:disabled {
    display: none !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-continue-watching {
    margin-bottom: 32px !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-continue-watching .gpl-card-row {
    padding-bottom: 10px !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-card-play,
.gpl-streamlearn.gpl-library-v2 .gpl-play-icon,
.gpl-streamlearn.gpl-library-v2 .gpl-hover-actions,
.gpl-streamlearn.gpl-library-v2 .gpl-mark-watched {
    display: none !important;
}

@media (max-width: 1200px) {
    .gpl-streamlearn.gpl-library-v2 .gpl-card {
        flex-basis: calc((100% - 42px) / 4) !important;
    }
}

@media (max-width: 767px) {
    .gpl-streamlearn.gpl-library-v2 .gpl-row {
        padding-left: 16px !important;
        padding-right: 16px !important;
    }
    .gpl-streamlearn.gpl-library-v2 .gpl-row-arrow {
        display: none !important;
    }
    .gpl-streamlearn.gpl-library-v2 .gpl-card {
        flex-basis: 74vw !important;
        min-width: 240px !important;
    }
}


/* StreamLearn card preview overlay fix v1.0.5 */
.gpl-streamlearn.gpl-library-v2 .gpl-card:hover {
    transform: none !important;
    box-shadow: none !important;
    border-color: rgba(255,255,255,.18) !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-card.is-preview-source {
    opacity: .72 !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-strip {
    position: relative !important;
    overflow: visible !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-card-row {
    overflow-x: auto !important;
    overflow-y: hidden !important;
    padding-top: 2px !important;
    padding-bottom: 8px !important;
}

.gpl-card-preview-portal {
    position: fixed !important;
    z-index: 999999 !important;
    width: 360px !important;
    max-width: calc(100vw - 28px) !important;
    background: #151821 !important;
    border: 1px solid rgba(255,255,255,.28) !important;
    border-radius: 14px !important;
    overflow: hidden !important;
    box-shadow: 0 26px 90px rgba(0,0,0,.86) !important;
    transform: translateZ(0) !important;
    animation: gplPreviewIn .12s ease-out !important;
}

@keyframes gplPreviewIn {
    from { opacity: .75; transform: scale(.96) translateZ(0); }
    to { opacity: 1; transform: scale(1) translateZ(0); }
}

.gpl-card-preview-portal a {
    display: block !important;
    color: #fff !important;
    text-decoration: none !important;
}

.gpl-card-preview-portal .gpl-card-image {
    aspect-ratio: 16 / 9 !important;
    background-size: cover !important;
    background-position: center !important;
}

.gpl-card-preview-portal .gpl-card-body {
    min-height: 88px !important;
    padding: 14px 16px 16px !important;
    background: #151821 !important;
}

.gpl-card-preview-portal .gpl-card-body h3 {
    color: #fff !important;
    font-size: 17px !important;
    line-height: 1.25 !important;
    margin: 0 0 8px !important;
}

.gpl-card-preview-portal .gpl-card-meta {
    color: #c8ceda !important;
    font-size: 12px !important;
}

.gpl-card-preview-portal .gpl-card-action,
.gpl-card-preview-portal .gpl-hover-card,
.gpl-card-preview-portal .gpl-card-play,
.gpl-card-preview-portal .gpl-play-icon {
    display: none !important;
}

.gpl-card-preview-portal .gpl-preview-controls {
    display: flex !important;
    gap: 10px !important;
    align-items: center !important;
    padding: 12px 16px 0 !important;
    background: #151821 !important;
}

.gpl-card-preview-portal .gpl-preview-play {
    width: 38px !important;
    height: 38px !important;
    border-radius: 999px !important;
    background: #fff !important;
    color: #000 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 16px !important;
    font-weight: 900 !important;
    padding-left: 2px !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-arrow {
    top: calc(50% + 20px) !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-prev {
    left: 18px !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-next {
    right: 18px !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-arrow.is-hidden {
    display: none !important;
}

/* StreamLearn image-only card front and hover controls v1.0.6 */
.gpl-streamlearn.gpl-library-v2 .gpl-episode-card > a,
.gpl-streamlearn.gpl-library-v2 .gpl-episode-card-link {
    display: block !important;
    background: transparent !important;
    border-radius: 10px !important;
    overflow: hidden !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-episode-card .gpl-card-image {
    aspect-ratio: 16 / 9 !important;
    border-radius: 10px !important;
    overflow: hidden !important;
    background-size: cover !important;
    background-position: center !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-episode-card .gpl-card-body {
    display: none !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-episode-card {
    background: transparent !important;
    border-color: rgba(255,255,255,.18) !important;
    box-shadow: none !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-progress {
    height: 4px !important;
    background: rgba(255,255,255,.28) !important;
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    z-index: 4 !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-progress span {
    background: #e50914 !important;
    display: block !important;
    height: 100% !important;
}

.gpl-card-preview-portal.gpl-episode-preview-portal {
    width: 430px !important;
    background: #151821 !important;
}

.gpl-card-preview-portal .gpl-preview-thumb {
    aspect-ratio: 16 / 9 !important;
    background-size: cover !important;
    background-position: center !important;
    position: relative !important;
}

.gpl-card-preview-portal .gpl-preview-content {
    padding: 14px 16px 18px !important;
    background: #151821 !important;
}

.gpl-card-preview-portal .gpl-preview-controls {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    align-items: center !important;
    padding: 0 0 12px !important;
    background: transparent !important;
}

.gpl-card-preview-portal .gpl-preview-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 34px !important;
    padding: 7px 12px !important;
    border-radius: 999px !important;
    border: 1px solid rgba(255,255,255,.28) !important;
    background: rgba(255,255,255,.08) !important;
    color: #fff !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    text-decoration: none !important;
    cursor: pointer !important;
}

.gpl-card-preview-portal .gpl-preview-btn:hover {
    background: rgba(255,255,255,.18) !important;
}

.gpl-card-preview-portal .gpl-preview-primary {
    background: #fff !important;
    color: #000 !important;
    border-color: #fff !important;
}

.gpl-card-preview-portal .gpl-preview-content h3 {
    margin: 0 0 8px !important;
    color: #fff !important;
    font-size: 18px !important;
    line-height: 1.25 !important;
}

.gpl-card-preview-portal .gpl-preview-content p {
    margin: 0 !important;
    color: #c8ceda !important;
    font-size: 13px !important;
}


/* StreamLearn row visual refinement v1.0.7 */
.gpl-streamlearn.gpl-library-v2 .gpl-progress {
    background: transparent !important;
    height: 4px !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-progress span {
    background: #e50914 !important;
    min-width: 0 !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-arrow {
    width: 46px !important;
    height: 78px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: linear-gradient(90deg, rgba(0,0,0,.02), rgba(0,0,0,.72)) !important;
    color: #fff !important;
    font-size: 46px !important;
    font-weight: 300 !important;
    line-height: 1 !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    box-shadow: none !important;
    opacity: .86 !important;
    z-index: 50 !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-prev {
    left: 0 !important;
    background: linear-gradient(270deg, rgba(0,0,0,.02), rgba(0,0,0,.72)) !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-next {
    right: 0 !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-arrow:hover {
    background: rgba(0,0,0,.82) !important;
    color: #fff !important;
    opacity: 1 !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-arrow.is-hidden,
.gpl-streamlearn.gpl-library-v2 .gpl-row-arrow:disabled {
    display: none !important;
}

.gpl-card-preview-portal.gpl-episode-preview-portal {
    box-shadow: 0 28px 95px rgba(0,0,0,.9) !important;
}

.gpl-card-preview-portal .gpl-preview-thumb .gpl-progress {
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    height: 4px !important;
    background: transparent !important;
    z-index: 4 !important;
}

.gpl-card-preview-portal .gpl-preview-thumb .gpl-progress span {
    display: block !important;
    height: 100% !important;
    background: #e50914 !important;
}


/* StreamLearn popup/icon and bigger row arrows v1.0.8 */
.gpl-streamlearn.gpl-library-v2 .gpl-row-arrow {
    width: 72px !important;
    height: 104px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    background: linear-gradient(90deg, rgba(0,0,0,.82) 0%, rgba(0,0,0,0) 100%) !important;
    color: rgba(255,255,255,.96) !important;
    font-size: 60px !important;
    font-weight: 300 !important;
    line-height: 1 !important;
    opacity: .96 !important;
    z-index: 60 !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-prev {
    left: 0 !important;
    background: linear-gradient(90deg, rgba(0,0,0,.82) 0%, rgba(0,0,0,0) 100%) !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-next {
    right: 0 !important;
    background: linear-gradient(270deg, rgba(0,0,0,.82) 0%, rgba(0,0,0,0) 100%) !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-arrow:hover {
    background: linear-gradient(90deg, rgba(0,0,0,.92) 0%, rgba(0,0,0,0) 100%) !important;
    color: #ffffff !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-next:hover {
    background: linear-gradient(270deg, rgba(0,0,0,.92) 0%, rgba(0,0,0,0) 100%) !important;
}

.gpl-card-preview-portal .gpl-preview-controls {
    gap: 10px !important;
    margin-bottom: 2px !important;
}

.gpl-card-preview-portal .gpl-preview-btn {
    min-height: 36px !important;
    padding: 8px 14px !important;
    font-size: 12px !important;
    font-weight: 800 !important;
}

.gpl-card-preview-portal .gpl-preview-content h3 {
    margin: 2px 0 10px !important;
}

.gpl-card-preview-portal .gpl-preview-meta-line {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
}

.gpl-card-preview-portal .gpl-preview-meta-pill {
    display: inline-flex !important;
    align-items: center !important;
    min-height: 28px !important;
    padding: 5px 10px !important;
    border-radius: 999px !important;
    background: rgba(255,255,255,.08) !important;
    color: #cfd6e2 !important;
    font-size: 12px !important;
    line-height: 1 !important;
    white-space: nowrap !important;
}

@media (max-width: 1024px) {
    .gpl-streamlearn.gpl-library-v2 .gpl-row-arrow {
        width: 56px !important;
        height: 92px !important;
        font-size: 50px !important;
    }
}


/* StreamLearn centered badge polish v1.0.9 */
.gpl-streamlearn.gpl-library-v2 .gpl-card-badge {
    left: 50% !important;
    right: auto !important;
    bottom: 10px !important;
    transform: translateX(-50%) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 24px !important;
    padding: 6px 14px !important;
    border-radius: 999px !important;
    font-size: 11px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    letter-spacing: 0.02em !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
    box-shadow: 0 8px 20px rgba(0,0,0,.32) !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-continue-watching .gpl-card-badge {
    display: none !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-card-image::after {
    background: linear-gradient(180deg, transparent 46%, rgba(0,0,0,.62)) !important;
}

/* Journey detail page v1.1.0 */
.gpl-journey-detail-v2 .gpl-journey-info {
    padding: 34px clamp(22px, 3vw, 48px) 12px !important;
    background: #050609 !important;
}

.gpl-journey-detail-v2 .gpl-journey-info-inner {
    max-width: 1120px !important;
    margin: 0 auto !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1.25fr) minmax(320px, .75fr) !important;
    gap: 28px !important;
    align-items: start !important;
}

.gpl-journey-detail-v2 .gpl-journey-about,
.gpl-journey-detail-v2 .gpl-journey-stats,
.gpl-journey-detail-v2 .gpl-season-shell {
    background: rgba(18,21,30,.86) !important;
    border: 1px solid rgba(255,255,255,.12) !important;
    border-radius: 16px !important;
    box-shadow: 0 22px 70px rgba(0,0,0,.28) !important;
}

.gpl-journey-detail-v2 .gpl-journey-about {
    padding: 24px 26px !important;
}

.gpl-journey-detail-v2 .gpl-journey-about h2,
.gpl-journey-detail-v2 .gpl-season-section-header h2 {
    margin: 0 0 12px !important;
    color: #fff !important;
    font-size: clamp(24px, 2.3vw, 34px) !important;
    line-height: 1.1 !important;
}

.gpl-journey-detail-v2 .gpl-journey-about p {
    margin: 0 !important;
    color: #d6dbe7 !important;
    font-size: 16px !important;
    line-height: 1.65 !important;
}

.gpl-journey-detail-v2 .gpl-journey-stats {
    padding: 14px !important;
    display: grid !important;
    gap: 10px !important;
}

.gpl-journey-detail-v2 .gpl-journey-stat {
    padding: 13px 14px !important;
    border-radius: 12px !important;
    background: rgba(255,255,255,.045) !important;
    display: flex !important;
    justify-content: space-between !important;
    gap: 14px !important;
    align-items: center !important;
}

.gpl-journey-detail-v2 .gpl-journey-stat span {
    color: #9ba4b7 !important;
    font-size: 12px !important;
    text-transform: uppercase !important;
    letter-spacing: .05em !important;
    font-weight: 800 !important;
}

.gpl-journey-detail-v2 .gpl-journey-stat strong {
    color: #fff !important;
    font-size: 14px !important;
    text-align: right !important;
}

.gpl-journey-detail-v2 .gpl-season-section-v2 {
    padding: 28px clamp(22px, 3vw, 48px) 70px !important;
    background: #050609 !important;
}

.gpl-journey-detail-v2 .gpl-season-shell {
    max-width: 1080px !important;
    margin: 0 auto !important;
    padding: 22px !important;
}

.gpl-journey-detail-v2 .gpl-season-section-header {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 18px !important;
    margin: 0 0 18px !important;
}

.gpl-journey-detail-v2 .gpl-season-tabs {
    display: flex !important;
    gap: 8px !important;
    flex-wrap: wrap !important;
    justify-content: flex-end !important;
}

.gpl-journey-detail-v2 .gpl-season-tab {
    min-height: 38px !important;
    padding: 8px 14px !important;
    border-radius: 999px !important;
    border: 1px solid rgba(255,255,255,.2) !important;
    background: rgba(255,255,255,.06) !important;
    color: #fff !important;
    font-weight: 800 !important;
    font-size: 13px !important;
    cursor: pointer !important;
}

.gpl-journey-detail-v2 .gpl-season-tab:hover,
.gpl-journey-detail-v2 .gpl-season-tab.is-active {
    background: #e50914 !important;
    border-color: #e50914 !important;
}

.gpl-journey-detail-v2 .gpl-season-panel {
    display: none !important;
}

.gpl-journey-detail-v2 .gpl-season-panel.is-active {
    display: block !important;
}

.gpl-journey-detail-v2 .gpl-season-header {
    display: flex !important;
    justify-content: space-between !important;
    gap: 18px !important;
    align-items: start !important;
    margin: 0 0 14px !important;
    padding: 0 0 14px !important;
    border-bottom: 1px solid rgba(255,255,255,.1) !important;
}

.gpl-journey-detail-v2 .gpl-season-header h3 {
    margin: 0 0 6px !important;
    color: #fff !important;
    font-size: 20px !important;
}

.gpl-journey-detail-v2 .gpl-season-header p {
    margin: 0 !important;
    color: #aeb6c6 !important;
    font-size: 14px !important;
    line-height: 1.5 !important;
}

.gpl-journey-detail-v2 .gpl-episode-list-v2 {
    display: grid !important;
    gap: 10px !important;
}

.gpl-journey-detail-v2 .gpl-episode-item-v2 {
    background: rgba(255,255,255,.035) !important;
    border: 1px solid rgba(255,255,255,.1) !important;
    border-radius: 14px !important;
    overflow: hidden !important;
    transition: background .16s ease, border-color .16s ease, transform .16s ease !important;
}

.gpl-journey-detail-v2 .gpl-episode-item-v2:hover {
    background: rgba(255,255,255,.06) !important;
    border-color: rgba(255,255,255,.24) !important;
    transform: translateY(-1px) !important;
}

.gpl-journey-detail-v2 .gpl-episode-item-v2 > a {
    display: grid !important;
    grid-template-columns: 48px 170px minmax(0, 1fr) auto !important;
    gap: 16px !important;
    align-items: center !important;
    padding: 12px !important;
    color: #fff !important;
    text-decoration: none !important;
}

.gpl-journey-detail-v2 .gpl-episode-number {
    color: #b4bdce !important;
    font-size: 24px !important;
    font-weight: 800 !important;
    text-align: center !important;
}

.gpl-journey-detail-v2 .gpl-episode-thumb {
    width: 170px !important;
    aspect-ratio: 16 / 9 !important;
    border-radius: 8px !important;
    background-size: cover !important;
    background-position: center !important;
    position: relative !important;
    overflow: hidden !important;
}

.gpl-journey-detail-v2 .gpl-episode-thumb::after {
    content: '' !important;
    position: absolute !important;
    inset: 0 !important;
    background: rgba(0,0,0,.24) !important;
}

.gpl-journey-detail-v2 .gpl-episode-thumb span {
    position: absolute !important;
    left: 50% !important;
    top: 50% !important;
    transform: translate(-50%, -50%) !important;
    z-index: 2 !important;
    min-height: 30px !important;
    padding: 7px 12px !important;
    border-radius: 999px !important;
    background: rgba(0,0,0,.72) !important;
    border: 1px solid rgba(255,255,255,.22) !important;
    color: #fff !important;
    font-size: 12px !important;
    font-weight: 800 !important;
}

.gpl-journey-detail-v2 .gpl-episode-info h4 {
    margin: 0 0 7px !important;
    color: #fff !important;
    font-size: 17px !important;
    line-height: 1.25 !important;
}

.gpl-journey-detail-v2 .gpl-episode-info p {
    margin: 0 0 9px !important;
    color: #c3cad8 !important;
    font-size: 14px !important;
    line-height: 1.45 !important;
}

.gpl-journey-detail-v2 .gpl-episode-meta {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
}

.gpl-journey-detail-v2 .gpl-episode-meta span {
    display: inline-flex !important;
    min-height: 24px !important;
    padding: 5px 9px !important;
    border-radius: 999px !important;
    background: rgba(255,255,255,.07) !important;
    color: #d5dbea !important;
    font-size: 12px !important;
    font-weight: 700 !important;
}

.gpl-journey-detail-v2 .gpl-episode-cta {
    min-height: 36px !important;
    padding: 9px 15px !important;
    border-radius: 999px !important;
    background: rgba(255,255,255,.08) !important;
    color: #fff !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    white-space: nowrap !important;
}

.gpl-journey-detail-v2 .gpl-episode-item-v2:hover .gpl-episode-cta {
    background: #fff !important;
    color: #000 !important;
}

.gpl-journey-detail-v2 .gpl-episode-item-v2.is-locked .gpl-episode-cta,
.gpl-journey-detail-v2 .gpl-episode-item-v2.is-locked .gpl-episode-thumb span {
    background: #e50914 !important;
    color: #fff !important;
}

@media (max-width: 900px) {
    .gpl-journey-detail-v2 .gpl-journey-info-inner {
        grid-template-columns: 1fr !important;
    }
    .gpl-journey-detail-v2 .gpl-season-section-header {
        align-items: flex-start !important;
        flex-direction: column !important;
    }
    .gpl-journey-detail-v2 .gpl-episode-item-v2 > a {
        grid-template-columns: 36px 120px minmax(0, 1fr) !important;
    }
    .gpl-journey-detail-v2 .gpl-episode-cta {
        display: none !important;
    }
    .gpl-journey-detail-v2 .gpl-episode-thumb {
        width: 120px !important;
    }
}

@media (max-width: 600px) {
    .gpl-journey-detail-v2 .gpl-season-shell,
    .gpl-journey-detail-v2 .gpl-journey-about,
    .gpl-journey-detail-v2 .gpl-journey-stats {
        border-radius: 12px !important;
    }
    .gpl-journey-detail-v2 .gpl-episode-item-v2 > a {
        grid-template-columns: 1fr !important;
        gap: 10px !important;
    }
    .gpl-journey-detail-v2 .gpl-episode-number {
        display: none !important;
    }
    .gpl-journey-detail-v2 .gpl-episode-thumb {
        width: 100% !important;
    }
}


/* Journey detail clean Netflix-style layout v1.1.1 */
.gpl-journey-detail-v2 .gpl-journey-info {
    padding: 42px clamp(24px, 4vw, 64px) 18px !important;
    background: #050609 !important;
}

.gpl-journey-detail-v2 .gpl-journey-info-inner {
    max-width: 1180px !important;
    margin: 0 auto !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1.35fr) minmax(280px, .65fr) !important;
    gap: 44px !important;
    align-items: start !important;
}

.gpl-journey-detail-v2 .gpl-journey-about,
.gpl-journey-detail-v2 .gpl-journey-stats,
.gpl-journey-detail-v2 .gpl-season-shell {
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

.gpl-journey-detail-v2 .gpl-journey-about {
    padding: 0 !important;
}

.gpl-journey-detail-v2 .gpl-journey-about h2,
.gpl-journey-detail-v2 .gpl-season-section-header h2 {
    margin: 0 0 14px !important;
    color: #fff !important;
    font-size: clamp(24px, 2.2vw, 32px) !important;
    line-height: 1.1 !important;
}

.gpl-journey-detail-v2 .gpl-journey-about p {
    max-width: 720px !important;
    margin: 0 !important;
    color: #d9dde7 !important;
    font-size: 17px !important;
    line-height: 1.55 !important;
}

.gpl-journey-detail-v2 .gpl-journey-stats {
    padding: 0 !important;
    display: grid !important;
    gap: 8px !important;
}

.gpl-journey-detail-v2 .gpl-journey-stat {
    padding: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    display: block !important;
    color: #d7dce8 !important;
}

.gpl-journey-detail-v2 .gpl-journey-stat span {
    display: inline !important;
    color: #8e97a8 !important;
    font-size: 14px !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    font-weight: 700 !important;
}

.gpl-journey-detail-v2 .gpl-journey-stat span::after {
    content: ': ' !important;
}

.gpl-journey-detail-v2 .gpl-journey-stat strong {
    display: inline !important;
    color: #fff !important;
    font-size: 14px !important;
    text-align: left !important;
    font-weight: 800 !important;
}

.gpl-journey-detail-v2 .gpl-season-section-v2 {
    padding: 30px clamp(24px, 4vw, 64px) 80px !important;
    background: #050609 !important;
}

.gpl-journey-detail-v2 .gpl-season-shell {
    max-width: 1100px !important;
    margin: 0 auto !important;
    padding: 0 !important;
}

.gpl-journey-detail-v2 .gpl-season-section-header {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 18px !important;
    margin: 0 0 16px !important;
}

.gpl-journey-detail-v2 .gpl-season-select {
    min-width: 170px !important;
    min-height: 46px !important;
    padding: 0 44px 0 18px !important;
    border-radius: 4px !important;
    border: 1px solid rgba(255,255,255,.35) !important;
    background: #232323 !important;
    color: #fff !important;
    font-size: 17px !important;
    font-weight: 800 !important;
}

.gpl-journey-detail-v2 .gpl-season-tabs {
    display: none !important;
}

.gpl-journey-detail-v2 .gpl-season-panel {
    display: none !important;
}

.gpl-journey-detail-v2 .gpl-season-panel.is-active {
    display: block !important;
}

.gpl-journey-detail-v2 .gpl-season-header {
    display: block !important;
    margin: 0 0 16px !important;
    padding: 0 !important;
    border: 0 !important;
}

.gpl-journey-detail-v2 .gpl-season-header h3 {
    display: inline !important;
    margin: 0 !important;
    color: #fff !important;
    font-size: 15px !important;
    font-weight: 800 !important;
}

.gpl-journey-detail-v2 .gpl-season-header p {
    display: inline !important;
    margin: 0 0 0 10px !important;
    color: #d5d8df !important;
    font-size: 14px !important;
    line-height: 1.4 !important;
}

.gpl-journey-detail-v2 .gpl-inline-badge {
    margin-left: 10px !important;
    vertical-align: middle !important;
}

.gpl-journey-detail-v2 .gpl-episode-list-v2 {
    display: grid !important;
    gap: 0 !important;
}

.gpl-journey-detail-v2 .gpl-episode-item-v2 {
    background: transparent !important;
    border: 0 !important;
    border-top: 1px solid rgba(255,255,255,.16) !important;
    border-radius: 0 !important;
    overflow: visible !important;
    transition: background .16s ease !important;
}

.gpl-journey-detail-v2 .gpl-episode-item-v2:last-child {
    border-bottom: 1px solid rgba(255,255,255,.16) !important;
}

.gpl-journey-detail-v2 .gpl-episode-item-v2:hover {
    background: rgba(255,255,255,.10) !important;
    border-color: rgba(255,255,255,.16) !important;
    transform: none !important;
}

.gpl-journey-detail-v2 .gpl-episode-item-v2 > a {
    display: grid !important;
    grid-template-columns: 46px 150px minmax(0, 1fr) 80px !important;
    gap: 22px !important;
    align-items: center !important;
    padding: 18px 0 !important;
    color: #fff !important;
    text-decoration: none !important;
}

.gpl-journey-detail-v2 .gpl-episode-number {
    color: #aeb4bf !important;
    font-size: 28px !important;
    font-weight: 400 !important;
    text-align: center !important;
}

.gpl-journey-detail-v2 .gpl-episode-thumb {
    width: 150px !important;
    aspect-ratio: 16 / 9 !important;
    border-radius: 3px !important;
    background-size: cover !important;
    background-position: center !important;
    position: relative !important;
    overflow: hidden !important;
}

.gpl-journey-detail-v2 .gpl-episode-thumb::after {
    content: none !important;
}

.gpl-journey-detail-v2 .gpl-episode-thumb span {
    display: none !important;
}

.gpl-journey-detail-v2 .gpl-episode-info h4 {
    margin: 0 0 6px !important;
    color: #fff !important;
    font-size: 17px !important;
    line-height: 1.25 !important;
}

.gpl-journey-detail-v2 .gpl-episode-info p {
    max-width: 650px !important;
    margin: 0 !important;
    color: #d1d5dd !important;
    font-size: 15px !important;
    line-height: 1.42 !important;
}

.gpl-journey-detail-v2 .gpl-episode-meta {
    margin-top: 8px !important;
}

.gpl-journey-detail-v2 .gpl-episode-meta span {
    display: inline-flex !important;
    min-height: 22px !important;
    padding: 4px 8px !important;
    border-radius: 999px !important;
    background: rgba(255,255,255,.10) !important;
    color: #d5dbea !important;
    font-size: 12px !important;
    font-weight: 700 !important;
}

.gpl-journey-detail-v2 .gpl-episode-duration {
    color: #e5e7ec !important;
    font-size: 15px !important;
    font-weight: 800 !important;
    text-align: right !important;
    white-space: nowrap !important;
}

.gpl-journey-detail-v2 .gpl-episode-cta {
    display: none !important;
}

@media (max-width: 900px) {
    .gpl-journey-detail-v2 .gpl-journey-info-inner {
        grid-template-columns: 1fr !important;
        gap: 22px !important;
    }
    .gpl-journey-detail-v2 .gpl-season-section-header {
        align-items: flex-start !important;
        flex-direction: column !important;
    }
    .gpl-journey-detail-v2 .gpl-episode-item-v2 > a {
        grid-template-columns: 34px 120px minmax(0, 1fr) !important;
        gap: 14px !important;
    }
    .gpl-journey-detail-v2 .gpl-episode-duration {
        display: none !important;
    }
    .gpl-journey-detail-v2 .gpl-episode-thumb {
        width: 120px !important;
    }
}

@media (max-width: 600px) {
    .gpl-journey-detail-v2 .gpl-episode-item-v2 > a {
        grid-template-columns: 30px 96px minmax(0, 1fr) !important;
        gap: 10px !important;
        padding: 14px 0 !important;
    }
    .gpl-journey-detail-v2 .gpl-episode-number {
        font-size: 20px !important;
    }
    .gpl-journey-detail-v2 .gpl-episode-thumb {
        width: 96px !important;
    }
}


/* Journey detail flat season selector placement v1.1.2 */
.gpl-journey-detail-v2 .gpl-season-section-header {
    display: block !important;
    margin: 0 0 18px !important;
}

.gpl-journey-detail-v2 .gpl-season-section-header h2 {
    margin: 0 !important;
}

.gpl-journey-detail-v2 .gpl-season-shell {
    max-width: 1080px !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;
}

.gpl-journey-detail-v2 .gpl-season-header {
    display: flex !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
    gap: 24px !important;
    margin: 0 0 12px !important;
    padding: 0 !important;
    border: 0 !important;
}

.gpl-journey-detail-v2 .gpl-season-title-wrap {
    min-width: 0 !important;
    padding-top: 4px !important;
}

.gpl-journey-detail-v2 .gpl-season-header h3 {
    display: inline !important;
    margin: 0 !important;
    font-size: 15px !important;
    line-height: 1.2 !important;
}

.gpl-journey-detail-v2 .gpl-season-header .gpl-inline-badge {
    display: inline-flex !important;
    margin-left: 10px !important;
}

.gpl-journey-detail-v2 .gpl-season-select {
    width: auto !important;
    min-width: 210px !important;
    max-width: 320px !important;
    min-height: 48px !important;
    flex: 0 0 auto !important;
    align-self: flex-start !important;
    margin: 0 !important;
}

.gpl-journey-detail-v2 .gpl-episode-list-v2 {
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

.gpl-journey-detail-v2 .gpl-episode-item-v2 {
    background: transparent !important;
    border-left: 0 !important;
    border-right: 0 !important;
    border-radius: 0 !important;
}

@media (max-width: 900px) {
    .gpl-journey-detail-v2 .gpl-season-header {
        flex-direction: column !important;
        gap: 12px !important;
    }
    .gpl-journey-detail-v2 .gpl-season-select {
        width: 100% !important;
        max-width: 100% !important;
    }
}


/* Journey detail final flat/plain polish v1.1.3 */
.gpl-journey-detail-v2 .gpl-journey-info {
    padding-top: 38px !important;
    padding-bottom: 8px !important;
}

.gpl-journey-detail-v2 .gpl-journey-info-inner {
    max-width: 1120px !important;
    grid-template-columns: minmax(0, 1fr) 320px !important;
    gap: 58px !important;
}

.gpl-journey-detail-v2 .gpl-journey-stats {
    display: block !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    color: #d9dde6 !important;
    font-size: 15px !important;
    line-height: 1.8 !important;
}

.gpl-journey-detail-v2 .gpl-journey-stat {
    display: block !important;
    padding: 0 !important;
    margin: 0 0 6px !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    color: #d9dde6 !important;
}

.gpl-journey-detail-v2 .gpl-journey-stat span {
    display: inline !important;
    color: #b6bfcc !important;
    font-size: 15px !important;
    font-weight: 400 !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
}

.gpl-journey-detail-v2 .gpl-journey-stat span::after {
    content: ': ' !important;
}

.gpl-journey-detail-v2 .gpl-journey-stat strong {
    display: inline !important;
    color: #ffffff !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    text-align: left !important;
}

.gpl-journey-detail-v2 .gpl-season-section-v2 {
    padding-top: 32px !important;
}

.gpl-journey-detail-v2 .gpl-season-shell {
    max-width: 1080px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

.gpl-journey-detail-v2 .gpl-season-header {
    margin-bottom: 8px !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
}

.gpl-journey-detail-v2 .gpl-episode-list-v2 {
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

.gpl-journey-detail-v2 .gpl-episode-item-v2 {
    background: transparent !important;
    border-left: 0 !important;
    border-right: 0 !important;
    border-top: 1px solid rgba(255,255,255,.16) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

.gpl-journey-detail-v2 .gpl-episode-item-v2:last-child {
    border-bottom: 1px solid rgba(255,255,255,.16) !important;
}

.gpl-journey-detail-v2 .gpl-episode-item-v2 > a {
    padding-top: 15px !important;
    padding-bottom: 15px !important;
}

.gpl-journey-detail-v2 .gpl-episode-item-v2:hover {
    background: rgba(255,255,255,.06) !important;
}

@media (max-width: 900px) {
    .gpl-journey-detail-v2 .gpl-journey-info-inner {
        grid-template-columns: 1fr !important;
        gap: 24px !important;
    }
}


/* Journey detail flat episode list final polish v1.1.4 */
.gpl-journey-detail-v2 .gpl-season-section-v2 {
    padding-top: 28px !important;
}

.gpl-journey-detail-v2 .gpl-season-shell,
.gpl-journey-detail-v2 .gpl-seasons,
.gpl-journey-detail-v2 .gpl-seasons-v2,
.gpl-journey-detail-v2 .gpl-season,
.gpl-journey-detail-v2 .gpl-season-panel {
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

.gpl-journey-detail-v2 .gpl-season-shell {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

.gpl-journey-detail-v2 .gpl-season-panel {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

.gpl-journey-detail-v2 .gpl-season-header {
    border-bottom: 0 !important;
    margin-bottom: 10px !important;
    padding-bottom: 8px !important;
    background: transparent !important;
}

.gpl-journey-detail-v2 .gpl-episode-list-v2 {
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

.gpl-journey-detail-v2 .gpl-episode-item-v2 > a {
    padding-top: 15px !important;
    padding-bottom: 15px !important;
}

.gpl-journey-detail-v2 .gpl-episode-item-v2:hover {
    background: rgba(255,255,255,.055) !important;
}


/* Journey detail season selector polish v1.1.5 */
.gpl-journey-detail-v2 .gpl-season-select {
    padding: 0 58px 0 20px !important;
    font-weight: 500 !important;
    font-size: 16px !important;
    line-height: 1.2 !important;
    color: rgba(255,255,255,.94) !important;
    appearance: none !important;
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    background-color: #232323 !important;
    background-image: linear-gradient(45deg, transparent 50%, #ffffff 50%), linear-gradient(135deg, #ffffff 50%, transparent 50%) !important;
    background-position: calc(100% - 27px) 50%, calc(100% - 20px) 50% !important;
    background-size: 7px 7px, 7px 7px !important;
    background-repeat: no-repeat !important;
}

.gpl-journey-detail-v2 .gpl-season-select option {
    font-weight: 400 !important;
}


/* Journey detail intro/access polish v1.1.6 */
.gpl-journey-detail-v2 .gpl-detail-hero .gpl-actions {
    align-items: center !important;
}

.gpl-journey-detail-v2 .gpl-detail-hero .gpl-intro-open {
    order: 1 !important;
}

.gpl-journey-detail-v2 .gpl-detail-hero .gpl-button-primary {
    order: 2 !important;
}

.gpl-journey-detail-v2 .gpl-detail-hero .gpl-watch-later-toggle {
    order: 3 !important;
}

.gpl-journey-detail-v2 .gpl-journey-info-inner {
    grid-template-columns: minmax(0, 1fr) 302px !important;
}

.gpl-journey-detail-v2 .gpl-journey-stats {
    justify-self: end !important;
    width: 302px !important;
}

.gpl-journey-detail-v2 .gpl-journey-stat strong {
    font-weight: 500 !important;
}

.gpl-journey-detail-v2 .gpl-access-panel {
    max-width: 1120px !important;
    margin: 42px auto 0 !important;
    padding: clamp(30px, 4vw, 48px) !important;
}

.gpl-journey-detail-v2 .gpl-access-panel > p:first-of-type {
    margin: 18px 0 24px !important;
}

.gpl-journey-detail-v2 .gpl-access-grid {
    gap: 16px !important;
}

.gpl-journey-detail-v2 .gpl-access-card,
.gpl-journey-detail-v2 .gpl-access-card:visited {
    color: #fff !important;
    text-decoration: none !important;
    background: rgba(255,255,255,.045) !important;
    border-color: rgba(255,255,255,.24) !important;
}

.gpl-journey-detail-v2 .gpl-access-card:hover,
.gpl-journey-detail-v2 .gpl-access-card:focus {
    color: #fff !important;
    background: rgba(229,9,20,.12) !important;
    border-color: rgba(229,9,20,.72) !important;
    transform: translateY(-2px) !important;
}

.gpl-journey-detail-v2 .gpl-access-card:hover .gpl-access-duration,
.gpl-journey-detail-v2 .gpl-access-card:hover .gpl-access-title,
.gpl-journey-detail-v2 .gpl-access-card:hover .gpl-access-price {
    color: inherit !important;
}

.gpl-journey-detail-v2 .gpl-access-title {
    color: rgba(220,225,235,.84) !important;
}

.gpl-journey-detail-v2 .gpl-access-duration,
.gpl-journey-detail-v2 .gpl-access-price {
    color: #fff !important;
}

.gpl-intro-modal {
    position: fixed !important;
    inset: 0 !important;
    z-index: 999999 !important;
    display: none !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 28px !important;
}

.gpl-intro-modal.is-open {
    display: flex !important;
}

.gpl-intro-backdrop {
    position: absolute !important;
    inset: 0 !important;
    background: rgba(0,0,0,.86) !important;
    backdrop-filter: blur(4px) !important;
}

.gpl-intro-dialog {
    position: relative !important;
    width: min(1120px, 94vw) !important;
    background: #050507 !important;
    border: 1px solid rgba(255,255,255,.22) !important;
    border-radius: 14px !important;
    box-shadow: 0 34px 120px rgba(0,0,0,.92) !important;
    overflow: hidden !important;
}

.gpl-intro-dialog .gpl-video-wrap {
    margin: 0 !important;
    border-radius: 0 !important;
    border: 0 !important;
}

.gpl-intro-close {
    position: absolute !important;
    right: 12px !important;
    top: 10px !important;
    z-index: 5 !important;
    width: 38px !important;
    height: 38px !important;
    border-radius: 999px !important;
    border: 1px solid rgba(255,255,255,.28) !important;
    background: rgba(0,0,0,.58) !important;
    color: #fff !important;
    font-size: 28px !important;
    line-height: 1 !important;
    cursor: pointer !important;
}

html.gpl-modal-open,
html.gpl-modal-open body {
    overflow: hidden !important;
}

@media (max-width: 900px) {
    .gpl-journey-detail-v2 .gpl-journey-stats {
        justify-self: stretch !important;
        width: auto !important;
    }
}


/* Journey hero logged-out button polish v1.1.7 */
.gpl-journey-detail-v2 .gpl-detail-hero.no-access .gpl-intro-open {
    order: 1 !important;
    background: var(--gpl-accent) !important;
    border-color: var(--gpl-accent) !important;
    color: #fff !important;
}

.gpl-journey-detail-v2 .gpl-detail-hero.no-access .gpl-intro-open:hover {
    background: var(--gpl-accent-dark) !important;
    border-color: var(--gpl-accent-dark) !important;
}

.gpl-journey-detail-v2 .gpl-detail-hero.no-access .gpl-choose-access-button {
    order: 2 !important;
    background: transparent !important;
    border-color: rgba(255,255,255,.68) !important;
    color: #fff !important;
}

.gpl-journey-detail-v2 .gpl-detail-hero.no-access .gpl-choose-access-button:hover {
    background: rgba(255,255,255,.08) !important;
    border-color: #fff !important;
}

.gpl-journey-detail-v2 .gpl-detail-hero.has-access .gpl-button-primary {
    background: var(--gpl-accent) !important;
    border-color: var(--gpl-accent) !important;
}

/* Journey detail alignment, status badge, and current episode v1.1.8 */
.gpl-journey-detail-v2 {
    --gpl-detail-width: 1080px;
}

.gpl-journey-detail-v2 .gpl-journey-info-inner,
.gpl-journey-detail-v2 .gpl-season-shell,
.gpl-journey-detail-v2 .gpl-currently-inner,
.gpl-journey-detail-v2 .gpl-access-panel {
    max-width: var(--gpl-detail-width) !important;
}

.gpl-journey-detail-v2 .gpl-journey-info-inner {
    grid-template-columns: minmax(0, 1fr) 280px !important;
    gap: 56px !important;
}

.gpl-journey-detail-v2 .gpl-journey-stats {
    width: 280px !important;
    justify-self: end !important;
    text-align: left !important;
}

.gpl-journey-detail-v2 .gpl-season-select {
    width: 280px !important;
    max-width: 280px !important;
}

.gpl-journey-detail-v2 .gpl-detail-hero.no-access .gpl-kicker {
    background: rgba(255,255,255,.10) !important;
    color: rgba(255,255,255,.92) !important;
}

.gpl-journey-detail-v2 .gpl-detail-hero.has-access .gpl-kicker {
    background: #e50914 !important;
    color: #ffffff !important;
}

.gpl-currently-watching {
    max-width: none !important;
    margin: 0 !important;
    padding: 8px clamp(18px, 4vw, 48px) 18px !important;
    background: #030407 !important;
    color: #fff !important;
}

.gpl-currently-inner {
    margin: 0 auto !important;
}

.gpl-currently-inner h2 {
    margin: 0 0 16px !important;
    color: #fff !important;
    font-size: clamp(24px, 3vw, 34px) !important;
    line-height: 1.1 !important;
}

.gpl-currently-card,
.gpl-currently-card:visited {
    display: grid !important;
    grid-template-columns: 150px minmax(0, 1fr) auto !important;
    gap: 22px !important;
    align-items: center !important;
    padding: 16px 0 !important;
    border-top: 1px solid rgba(255,255,255,.16) !important;
    border-bottom: 1px solid rgba(255,255,255,.16) !important;
    color: #fff !important;
    text-decoration: none !important;
}

.gpl-currently-card:hover {
    background: rgba(255,255,255,.05) !important;
}

.gpl-currently-thumb {
    width: 150px !important;
    aspect-ratio: 16 / 9 !important;
    border-radius: 4px !important;
    background-size: cover !important;
    background-position: center !important;
}

.gpl-currently-copy span {
    display: block !important;
    margin-bottom: 6px !important;
    color: #b8c1ce !important;
    font-size: 13px !important;
}

.gpl-currently-copy h3 {
    margin: 0 0 6px !important;
    color: #fff !important;
    font-size: 18px !important;
    line-height: 1.25 !important;
}

.gpl-currently-copy p {
    margin: 0 !important;
    color: #d6dbe6 !important;
    font-size: 14px !important;
    line-height: 1.45 !important;
}

.gpl-currently-card strong {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 38px !important;
    padding: 0 18px !important;
    border-radius: 999px !important;
    background: #e50914 !important;
    color: #fff !important;
    font-size: 13px !important;
    font-weight: 800 !important;
}

.gpl-journey-detail-v2 .gpl-season-section-v2 {
    padding-top: 32px !important;
}

@media (max-width: 900px) {
    .gpl-journey-detail-v2 .gpl-journey-info-inner {
        grid-template-columns: 1fr !important;
        gap: 22px !important;
    }
    .gpl-journey-detail-v2 .gpl-journey-stats,
    .gpl-journey-detail-v2 .gpl-season-select {
        width: 100% !important;
        max-width: 100% !important;
        justify-self: stretch !important;
    }
    .gpl-currently-card,
    .gpl-currently-card:visited {
        grid-template-columns: 112px minmax(0, 1fr) !important;
    }
    .gpl-currently-card strong {
        grid-column: 1 / -1 !important;
        justify-self: start !important;
    }
    .gpl-currently-thumb {
        width: 112px !important;
    }
}


/* StreamLearn full-screen episode player v1.1.9 */
body.single-gpl_episode,
body.single-gpl_episode #page,
body.single-gpl_episode .site,
body.single-gpl_episode .site-content,
body.single-gpl_episode .content-area,
body.single-gpl_episode main,
body.single-gpl_episode article {
    background: #000 !important;
}

body.single-gpl_episode .gpl-episode-page-fullscreen {
    position: fixed !important;
    inset: 0 !important;
    z-index: 100000 !important;
    width: 100vw !important;
    height: 100vh !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #000 !important;
    overflow: hidden !important;
}

.gpl-episode-page-fullscreen .gpl-player-fullscreen {
    position: relative !important;
    width: 100vw !important;
    height: 100vh !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #000 !important;
    overflow: hidden !important;
}

.gpl-episode-page-fullscreen .gpl-video-wrap-fullscreen {
    width: 100vw !important;
    height: 100vh !important;
    max-width: none !important;
    aspect-ratio: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: #000 !important;
}

.gpl-episode-page-fullscreen .gpl-video-wrap-fullscreen iframe,
.gpl-episode-page-fullscreen .gpl-video-wrap-fullscreen video {
    width: 100vw !important;
    height: 100vh !important;
    display: block !important;
    border: 0 !important;
    background: #000 !important;
}

.gpl-episode-page-fullscreen .gpl-video-wrap-fullscreen video {
    object-fit: contain !important;
}

.gpl-episode-page-fullscreen .gpl-video-missing {
    width: 100vw !important;
    height: 100vh !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #b9c7ff !important;
    background: #000 !important;
}

.gpl-episode-page-fullscreen .gpl-player-overlay {
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 5 !important;
    opacity: 0 !important;
    pointer-events: none !important;
    transition: opacity .22s ease !important;
}

.gpl-episode-page-fullscreen .gpl-player-fullscreen:hover .gpl-player-overlay,
.gpl-episode-page-fullscreen .gpl-player-fullscreen:focus-within .gpl-player-overlay {
    opacity: 1 !important;
    pointer-events: auto !important;
}

.gpl-episode-page-fullscreen .gpl-player-top {
    top: 0 !important;
    display: flex !important;
    align-items: center !important;
    gap: 18px !important;
    padding: clamp(20px, 3vw, 42px) clamp(20px, 4vw, 56px) 90px !important;
    background: linear-gradient(180deg, rgba(0,0,0,.84), rgba(0,0,0,0)) !important;
}

.gpl-episode-page-fullscreen .gpl-player-back {
    width: 48px !important;
    height: 48px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #fff !important;
    text-decoration: none !important;
    font-size: 42px !important;
    line-height: 1 !important;
    font-weight: 300 !important;
}

.gpl-episode-page-fullscreen .gpl-player-top span {
    display: block !important;
    color: rgba(255,255,255,.68) !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    margin-bottom: 2px !important;
}

.gpl-episode-page-fullscreen .gpl-player-top strong {
    display: block !important;
    color: #fff !important;
    font-size: clamp(18px, 2vw, 28px) !important;
    line-height: 1.1 !important;
}

.gpl-episode-page-fullscreen .gpl-player-bottom {
    bottom: 0 !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    gap: 28px !important;
    align-items: end !important;
    padding: 110px clamp(20px, 4vw, 56px) clamp(26px, 4vw, 48px) !important;
    background: linear-gradient(0deg, rgba(0,0,0,.9), rgba(0,0,0,0)) !important;
}

.gpl-episode-page-fullscreen .gpl-player-info span {
    display: block !important;
    color: #c9d6f5 !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    margin-bottom: 8px !important;
}

.gpl-episode-page-fullscreen .gpl-player-info h1 {
    margin: 0 0 8px !important;
    color: #fff !important;
    font-size: clamp(24px, 3vw, 42px) !important;
    line-height: 1.05 !important;
}

.gpl-episode-page-fullscreen .gpl-player-info p {
    max-width: 760px !important;
    margin: 0 !important;
    color: rgba(255,255,255,.84) !important;
    font-size: clamp(14px, 1.1vw, 18px) !important;
    line-height: 1.5 !important;
}

.gpl-episode-page-fullscreen .gpl-player-controls {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 12px !important;
    flex-wrap: wrap !important;
}

.gpl-episode-page-fullscreen .gpl-player-icon-link {
    min-height: 44px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 10px 16px !important;
    border: 1px solid rgba(255,255,255,.28) !important;
    border-radius: 999px !important;
    background: rgba(255,255,255,.1) !important;
    color: #fff !important;
    text-decoration: none !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    cursor: pointer !important;
}

.gpl-episode-page-fullscreen .gpl-player-next {
    background: #e50914 !important;
    border-color: #e50914 !important;
}

.gpl-episode-page-fullscreen .gpl-player-icon-link:hover,
.gpl-episode-page-fullscreen .gpl-player-back:hover {
    opacity: .88 !important;
}

@media (max-width: 780px) {
    .gpl-episode-page-fullscreen .gpl-player-bottom {
        grid-template-columns: 1fr !important;
        align-items: start !important;
    }
    .gpl-episode-page-fullscreen .gpl-player-controls {
        justify-content: flex-start !important;
    }
}


/* StreamLearn protected fullscreen player polish v1.2.0 */
.gpl-episode-page-fullscreen .gpl-player-overlay {
    pointer-events: none !important;
}

.gpl-episode-page-fullscreen .gpl-player-fullscreen:hover .gpl-player-overlay,
.gpl-episode-page-fullscreen .gpl-player-fullscreen:focus-within .gpl-player-overlay,
.gpl-episode-page-fullscreen .gpl-player-fullscreen.is-controls-visible .gpl-player-overlay {
    opacity: 1 !important;
    pointer-events: none !important;
}

.gpl-episode-page-fullscreen .gpl-player-fullscreen.is-controls-hidden .gpl-player-overlay {
    opacity: 0 !important;
}

.gpl-episode-page-fullscreen .gpl-player-back,
.gpl-episode-page-fullscreen .gpl-player-controls,
.gpl-episode-page-fullscreen .gpl-player-controls * {
    pointer-events: auto !important;
}

.gpl-episode-page-fullscreen .gpl-player-top {
    background: linear-gradient(180deg, rgba(0,0,0,.54), rgba(0,0,0,0)) !important;
}

.gpl-episode-page-fullscreen .gpl-player-back {
    width: 64px !important;
    height: 64px !important;
    border-radius: 999px !important;
}

.gpl-episode-page-fullscreen .gpl-player-back:hover {
    background: rgba(255,255,255,.12) !important;
}

.gpl-episode-page-fullscreen .gpl-player-bottom {
    bottom: 92px !important;
    padding: 70px clamp(20px, 4vw, 56px) 0 !important;
    background: linear-gradient(0deg, rgba(0,0,0,.58), rgba(0,0,0,0)) !important;
}

.gpl-episode-page-fullscreen .gpl-player-icon-link {
    min-height: 50px !important;
    padding: 12px 20px !important;
    font-size: 14px !important;
}

.gpl-episode-page-fullscreen .gpl-video-wrap-fullscreen video {
    -webkit-user-drag: none !important;
    user-select: none !important;
}

.gpl-player-context-menu {
    position: fixed !important;
    z-index: 100010 !important;
    min-width: 220px !important;
    display: none !important;
    padding: 8px !important;
    border: 1px solid rgba(255,255,255,.16) !important;
    border-radius: 12px !important;
    background: rgba(18,18,22,.96) !important;
    box-shadow: 0 20px 55px rgba(0,0,0,.55) !important;
    color: #fff !important;
}

.gpl-player-context-menu.is-open {
    display: block !important;
}

.gpl-player-context-menu button,
.gpl-player-context-menu a {
    width: 100% !important;
    display: block !important;
    padding: 10px 12px !important;
    border: 0 !important;
    border-radius: 8px !important;
    background: transparent !important;
    color: #fff !important;
    text-align: left !important;
    text-decoration: none !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    cursor: pointer !important;
}

.gpl-player-context-menu button:hover,
.gpl-player-context-menu a:hover {
    background: rgba(255,255,255,.12) !important;
}

@media (max-width: 780px) {
    .gpl-episode-page-fullscreen .gpl-player-bottom {
        bottom: 76px !important;
    }
}

/* StreamLearn resources and hover polish v1.2.3 */
.gpl-card-preview-portal .gpl-preview-primary,
.gpl-card-preview-portal a.gpl-preview-primary,
.gpl-card-preview-portal .gpl-preview-btn.gpl-preview-primary {
    background: #e50914 !important;
    border-color: #e50914 !important;
    color: #ffffff !important;
}

.gpl-card-preview-portal .gpl-preview-primary:hover,
.gpl-card-preview-portal a.gpl-preview-primary:hover,
.gpl-card-preview-portal .gpl-preview-btn.gpl-preview-primary:hover {
    background: #f6121d !important;
    border-color: #f6121d !important;
    color: #ffffff !important;
}

.gpl-card-preview-portal .gpl-preview-meta-pill {
    gap: 0 !important;
}

.gpl-documents-panel .gpl-season-header {
    align-items: center !important;
}

.gpl-document-list {
    border-top: 1px solid rgba(255,255,255,.16);
}

.gpl-document-item {
    display: grid;
    grid-template-columns: 74px minmax(0, 1fr) auto;
    align-items: center;
    gap: 22px;
    min-height: 104px;
    padding: 22px 0;
    border-bottom: 1px solid rgba(255,255,255,.16);
    color: #ffffff;
}

.gpl-document-icon {
    width: 52px;
    height: 52px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(255,255,255,.28);
    border-radius: 10px;
    background: rgba(255,255,255,.06);
    color: #cfd6e2;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .08em;
}

.gpl-document-copy h4 {
    margin: 0 0 6px;
    color: #ffffff;
    font-size: 18px;
    line-height: 1.2;
}

.gpl-document-copy p {
    margin: 0 0 6px;
    color: #dce3ee;
    font-size: 14px;
    line-height: 1.45;
}

.gpl-document-copy span {
    display: block;
    color: #9ca6b5;
    font-size: 12px;
}

.gpl-document-download {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding: 10px 18px;
    border-radius: 999px;
    background: #e50914;
    color: #fff !important;
    font-size: 13px;
    font-weight: 800;
    line-height: 1;
    text-decoration: none !important;
}

.gpl-document-download:hover {
    background: #f6121d;
    color: #fff !important;
}

@media (max-width: 767px) {
    .gpl-document-item {
        grid-template-columns: 56px 1fr;
        gap: 14px;
    }

    .gpl-document-download {
        grid-column: 2;
        width: max-content;
    }
}


/* Journey page progress-bar episodes, no current block v1.2.5 */
.gpl-journey-detail-v2 .gpl-currently-watching {
    display: none !important;
}

.gpl-journey-detail-v2 .gpl-episode-thumb {
    position: relative !important;
    overflow: hidden !important;
}

.gpl-journey-detail-v2 .gpl-episode-thumb-progress {
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    height: 4px !important;
    background: rgba(255,255,255,.26) !important;
    z-index: 5 !important;
}

.gpl-journey-detail-v2 .gpl-episode-thumb-progress span {
    display: block !important;
    height: 100% !important;
    background: #e50914 !important;
    border-radius: 0 999px 999px 0 !important;
}

.gpl-journey-detail-v2 .gpl-episode-item-v2.is-watched .gpl-episode-thumb-progress {
    background: rgba(255,255,255,.18) !important;
}

.gpl-journey-detail-v2 .gpl-episode-item-v2.is-current > a {
    background: rgba(255,255,255,.055) !important;
}

.gpl-journey-detail-v2 .gpl-episode-item-v2.is-watched .gpl-episode-info h4,
.gpl-journey-detail-v2 .gpl-episode-item-v2.is-watched .gpl-episode-info p {
    opacity: .78 !important;
}


/* Journey episode duration + thin progress bar polish v1.2.6 */
.gpl-journey-detail-v2 .gpl-episode-thumb-progress {
    height: 3px !important;
    background: transparent !important;
    border-radius: 0 !important;
    overflow: hidden !important;
}

.gpl-journey-detail-v2 .gpl-episode-thumb-progress span {
    height: 3px !important;
    border-radius: 0 !important;
}

.gpl-journey-detail-v2 .gpl-episode-item-v2.is-current > a {
    background: transparent !important;
}

.gpl-journey-detail-v2 .gpl-episode-duration {
    min-width: 72px !important;
    text-align: right !important;
    color: rgba(255,255,255,.82) !important;
    font-weight: 700 !important;
}

/* Journey episode progress left alignment fix v1.2.7 */
.gpl-journey-detail-v2 .gpl-episode-thumb-progress {
    display: block !important;
}

.gpl-journey-detail-v2 .gpl-episode-thumb-progress span {
    display: block !important;
    position: absolute !important;
    left: 0 !important;
    top: 0 !important;
    bottom: 0 !important;
    margin: 0 !important;
    transform: none !important;
}

/* Journey episode duration visible right-column polish v1.2.8 */
.gpl-journey-detail-v2 .gpl-episode-item-v2 > a {
    grid-template-columns: 46px 150px minmax(0, 1fr) 88px !important;
}

.gpl-journey-detail-v2 .gpl-episode-duration {
    display: block !important;
    justify-self: end !important;
    align-self: start !important;
    padding-top: 4px !important;
    min-width: 72px !important;
    color: rgba(255,255,255,.86) !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    text-align: right !important;
    white-space: nowrap !important;
}

@media (max-width: 900px) {
    .gpl-journey-detail-v2 .gpl-episode-item-v2 > a {
        grid-template-columns: 34px 120px minmax(0, 1fr) !important;
    }
    .gpl-journey-detail-v2 .gpl-episode-duration {
        display: none !important;
    }
}

/* Journey duration vertical alignment polish v1.2.9 */
.gpl-journey-detail-v2 .gpl-episode-item-v2 > a {
    align-items: center !important;
}

.gpl-journey-detail-v2 .gpl-episode-duration {
    align-self: center !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    height: 100% !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    color: rgba(255,255,255,.78) !important;
}


/* Save/Saved for Later wording and neutral button polish v1.3.0 */
.gpl-journey-detail-v2 .gpl-detail-hero .gpl-watch-later-toggle,
.gpl-journey-detail-v2 .gpl-detail-hero.has-access .gpl-watch-later-toggle {
    background: rgba(255,255,255,.08) !important;
    border-color: rgba(255,255,255,.22) !important;
    color: #ffffff !important;
}

.gpl-journey-detail-v2 .gpl-detail-hero .gpl-watch-later-toggle:hover,
.gpl-journey-detail-v2 .gpl-detail-hero.has-access .gpl-watch-later-toggle:hover {
    background: rgba(255,255,255,.14) !important;
    border-color: rgba(255,255,255,.34) !important;
    color: #ffffff !important;
}

.gpl-card-preview-portal .gpl-watch-later-toggle,
.gpl-card-preview-portal .gpl-preview-btn.gpl-watch-later-toggle {
    background: rgba(255,255,255,.08) !important;
    border-color: rgba(255,255,255,.28) !important;
    color: #ffffff !important;
}

.gpl-card-preview-portal .gpl-watch-later-toggle:hover,
.gpl-card-preview-portal .gpl-preview-btn.gpl-watch-later-toggle:hover {
    background: rgba(255,255,255,.16) !important;
    border-color: rgba(255,255,255,.40) !important;
    color: #ffffff !important;
}

.gpl-hover-actions .gpl-watch-later-toggle {
    background: rgba(255,255,255,.08) !important;
    border-color: rgba(255,255,255,.30) !important;
}

.gpl-hover-actions .gpl-watch-later-toggle:hover {
    background: rgba(255,255,255,.16) !important;
    border-color: rgba(255,255,255,.46) !important;
}


/* Save persistence and episode-player save button v1.3.1 */
.gpl-watch-later-toggle.is-saved,
.gpl-watch-later-toggle.is-saved:hover,
.gpl-card-preview-portal .gpl-watch-later-toggle.is-saved,
.gpl-card-preview-portal .gpl-watch-later-toggle.is-saved:hover {
    background: rgba(255,255,255,.16) !important;
    border-color: rgba(255,255,255,.42) !important;
    color: #fff !important;
}

.gpl-player-fullscreen .gpl-player-controls .gpl-watch-later-toggle {
    min-width: 86px !important;
}

/* Save videos + favourites split v1.3.2 */
.gpl-favourite-toggle,
.gpl-card-preview-portal .gpl-favourite-toggle,
.gpl-journey-detail-v2 .gpl-detail-hero .gpl-favourite-toggle {
    background: rgba(255,255,255,.06) !important;
    border: 1px solid rgba(255,255,255,.34) !important;
    color: #fff !important;
}

.gpl-favourite-toggle:hover,
.gpl-card-preview-portal .gpl-favourite-toggle:hover,
.gpl-journey-detail-v2 .gpl-detail-hero .gpl-favourite-toggle:hover {
    background: rgba(255,255,255,.14) !important;
    border-color: rgba(255,255,255,.52) !important;
    color: #fff !important;
}

.gpl-favourite-toggle.is-favourited,
.gpl-favourite-toggle.is-favourited:hover,
.gpl-journey-card.is-favourited .gpl-favourite-toggle {
    background: rgba(255,255,255,.16) !important;
    border-color: rgba(255,255,255,.62) !important;
    color: #fff !important;
}

.gpl-row-favourites .gpl-card-action,
.gpl-row-saved-videos .gpl-card-action {
    background: rgba(0,0,0,.68) !important;
    border: 1px solid rgba(255,255,255,.28) !important;
    color: #fff !important;
}


/* Favourites wording + neutral intro hover polish v1.3.3 */
.gpl-journey-detail-v2 .gpl-detail-hero.has-access .gpl-intro-open,
.gpl-journey-detail-v2 .gpl-detail-hero.has-access .gpl-intro-open:visited {
    background: transparent !important;
    border-color: transparent !important;
    color: #fff !important;
}

.gpl-journey-detail-v2 .gpl-detail-hero.has-access .gpl-intro-open:hover,
.gpl-journey-detail-v2 .gpl-detail-hero.has-access .gpl-intro-open:focus {
    background: rgba(255,255,255,.10) !important;
    border-color: rgba(255,255,255,.28) !important;
    color: #fff !important;
}

.gpl-journey-detail-v2 .gpl-detail-hero .gpl-favourite-toggle,
.gpl-journey-detail-v2 .gpl-detail-hero .gpl-favourite-toggle:visited {
    background: transparent !important;
    border-color: rgba(255,255,255,.42) !important;
    color: #fff !important;
}

.gpl-journey-detail-v2 .gpl-detail-hero .gpl-favourite-toggle:hover,
.gpl-journey-detail-v2 .gpl-detail-hero .gpl-favourite-toggle:focus,
.gpl-journey-detail-v2 .gpl-detail-hero .gpl-favourite-toggle.is-favourited:hover {
    background: rgba(255,255,255,.10) !important;
    border-color: rgba(255,255,255,.58) !important;
    color: #fff !important;
}

/* StreamLearn hover-card edge buffer for row arrows v1.3.4 */
.gpl-streamlearn.gpl-library-v2 .gpl-row-arrow {
    z-index: 10020 !important;
}

.gpl-card-preview-portal.gpl-episode-preview-portal {
    z-index: 10010 !important;
}

/* StreamLearn compact hover card and arrow-safe content frame v1.3.5 */
.gpl-card-preview-portal.gpl-episode-preview-portal {
    width: 380px !important;
    max-width: calc(100vw - 256px) !important;
}

.gpl-card-preview-portal .gpl-preview-content {
    padding: 12px 14px 14px !important;
}

.gpl-card-preview-portal .gpl-preview-controls {
    gap: 7px !important;
    padding-bottom: 9px !important;
    margin-bottom: 0 !important;
}

.gpl-card-preview-portal .gpl-preview-btn {
    min-height: 31px !important;
    padding: 6px 10px !important;
    font-size: 12px !important;
    font-weight: 800 !important;
}

.gpl-card-preview-portal .gpl-preview-content h3 {
    margin: 0 0 8px !important;
    font-size: 17px !important;
    line-height: 1.2 !important;
}

.gpl-card-preview-portal .gpl-preview-meta-line {
    gap: 6px !important;
}

.gpl-card-preview-portal .gpl-preview-meta-pill {
    min-height: 24px !important;
    padding: 4px 8px !important;
    font-size: 11px !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-arrow {
    z-index: 10050 !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-strip {
    overflow: visible !important;
}

@media (max-width: 700px) {
    .gpl-card-preview-portal.gpl-episode-preview-portal {
        width: min(340px, calc(100vw - 28px)) !important;
        max-width: calc(100vw - 28px) !important;
    }
}


/* StreamLearn hover image play button and compact info row v1.3.6 */
.gpl-card-preview-portal .gpl-preview-thumb {
    position: relative !important;
}

.gpl-card-preview-portal .gpl-preview-image-play {
    position: absolute !important;
    inset: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-decoration: none !important;
    z-index: 4 !important;
    background: transparent !important;
}

.gpl-card-preview-portal .gpl-preview-image-play span {
    width: 0 !important;
    height: 0 !important;
    border-top: 22px solid transparent !important;
    border-bottom: 22px solid transparent !important;
    border-left: 34px solid rgba(255,255,255,.94) !important;
    filter: drop-shadow(0 4px 14px rgba(0,0,0,.65)) !important;
    transform: translateX(4px) !important;
    opacity: .94 !important;
    transition: transform .16s ease, opacity .16s ease !important;
}

.gpl-card-preview-portal .gpl-preview-image-play:hover span {
    opacity: 1 !important;
    transform: translateX(4px) scale(1.08) !important;
}

.gpl-card-preview-portal .gpl-preview-controls {
    padding-top: 0 !important;
}

.gpl-card-preview-portal .gpl-preview-info {
    background: rgba(255,255,255,.1) !important;
    border-color: rgba(255,255,255,.3) !important;
}

.gpl-card-preview-portal .gpl-preview-btn.gpl-preview-primary::before,
.gpl-card-preview-portal .gpl-preview-btn::before {
    content: none !important;
}


/* StreamLearn hover journey polish v1.3.7 */
.gpl-card-preview-portal .gpl-preview-image-play span {
    width: 58px !important;
    height: 58px !important;
    border: 0 !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: contain !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Cpath d='M22 14 Q22 10 25.5 12 L49 28.5 Q54 32 49 35.5 L25.5 52 Q22 54 22 50 Z' fill='white'/%3E%3C/svg%3E") !important;
    filter: drop-shadow(0 4px 14px rgba(0,0,0,.65)) !important;
    transform: translateX(2px) !important;
    opacity: .94 !important;
}

.gpl-card-preview-portal .gpl-preview-image-play:hover span {
    transform: translateX(2px) scale(1.08) !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-favourites .gpl-card-body {
    display: none !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-favourites .gpl-card {
    min-height: auto !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-favourites .gpl-card-image {
    border-radius: 12px !important;
}

.gpl-card-preview-portal .gpl-preview-excerpt {
    color: rgba(255,255,255,.78) !important;
    font-size: 13px !important;
    line-height: 1.4 !important;
    margin: 2px 0 10px !important;
}

.gpl-card-preview-portal .gpl-favourite-toggle.is-favourited {
    background: rgba(255,255,255,.12) !important;
    border-color: rgba(255,255,255,.32) !important;
    color: #fff !important;
}


/* StreamLearn Netflix-style frame + overflow rows v1.3.8 */
.gpl-streamlearn.gpl-library-v2 {
    --gpl-frame-pad: 56px;
    --gpl-row-bleed: 56px;
    --gpl-arrow-zone: 56px;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row {
    padding-left: var(--gpl-frame-pad) !important;
    padding-right: var(--gpl-frame-pad) !important;
    overflow: visible !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-header {
    position: relative !important;
    z-index: 2 !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-strip {
    position: relative !important;
    overflow: visible !important;
    margin-left: calc(var(--gpl-row-bleed) * -1) !important;
    margin-right: calc(var(--gpl-row-bleed) * -1) !important;
    padding-left: var(--gpl-row-bleed) !important;
    padding-right: var(--gpl-row-bleed) !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-card-row {
    overflow-x: auto !important;
    overflow-y: visible !important;
    scroll-padding-left: var(--gpl-frame-pad) !important;
    scroll-padding-right: var(--gpl-frame-pad) !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-arrow {
    position: absolute !important;
    top: 0 !important;
    bottom: 0 !important;
    width: var(--gpl-arrow-zone) !important;
    min-width: 0 !important;
    height: auto !important;
    border-radius: 0 !important;
    z-index: 10060 !important;
    background: linear-gradient(to right, rgba(0,0,0,.86), rgba(0,0,0,0)) !important;
    border: 0 !important;
    box-shadow: none !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-next {
    right: 0 !important;
    left: auto !important;
    background: linear-gradient(to left, rgba(0,0,0,.86), rgba(0,0,0,0)) !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-prev {
    left: 0 !important;
    right: auto !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-arrow:hover {
    background: linear-gradient(to right, rgba(0,0,0,.92), rgba(0,0,0,.08)) !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-next:hover {
    background: linear-gradient(to left, rgba(0,0,0,.92), rgba(0,0,0,.08)) !important;
}

.gpl-card-preview-portal.gpl-episode-preview-portal {
    width: 360px !important;
    max-width: calc(100vw - 40px) !important;
}

@media (max-width: 1024px) {
    .gpl-streamlearn.gpl-library-v2 {
        --gpl-frame-pad: 36px;
        --gpl-row-bleed: 36px;
        --gpl-arrow-zone: 42px;
    }
}

@media (max-width: 767px) {
    .gpl-streamlearn.gpl-library-v2 {
        --gpl-frame-pad: 16px;
        --gpl-row-bleed: 16px;
        --gpl-arrow-zone: 0px;
    }

    .gpl-streamlearn.gpl-library-v2 .gpl-row {
        padding-left: 16px !important;
        padding-right: 16px !important;
    }

    .gpl-streamlearn.gpl-library-v2 .gpl-row-strip {
        margin-left: 0 !important;
        margin-right: 0 !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    .gpl-card-preview-portal.gpl-episode-preview-portal {
        width: min(340px, calc(100vw - 28px)) !important;
        max-width: calc(100vw - 28px) !important;
    }
}

/* StreamLearn frame/overflow correction v1.3.9 */
.gpl-streamlearn.gpl-library-v2 {
    --gpl-frame-pad: clamp(76px, 5.2vw, 104px) !important;
    --gpl-row-bleed: clamp(76px, 5.2vw, 104px) !important;
    --gpl-arrow-zone: clamp(56px, 4vw, 72px) !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row {
    padding-left: var(--gpl-frame-pad) !important;
    padding-right: var(--gpl-frame-pad) !important;
    overflow: visible !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-strip {
    position: relative !important;
    overflow: visible !important;
    margin-left: calc(var(--gpl-row-bleed) * -1) !important;
    margin-right: calc(var(--gpl-row-bleed) * -1) !important;
    padding-left: var(--gpl-row-bleed) !important;
    padding-right: var(--gpl-row-bleed) !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-card-row {
    overflow-x: auto !important;
    overflow-y: hidden !important;
    padding-top: 8px !important;
    padding-bottom: 28px !important;
    scroll-padding-left: var(--gpl-frame-pad) !important;
    scroll-padding-right: var(--gpl-frame-pad) !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-card {
    flex: 0 0 calc((100% - 70px) / 5.55) !important;
    min-width: 245px !important;
    max-width: 325px !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-arrow {
    position: absolute !important;
    top: 50% !important;
    bottom: auto !important;
    transform: translateY(-50%) !important;
    width: var(--gpl-arrow-zone) !important;
    height: 100% !important;
    min-height: 92px !important;
    max-height: 170px !important;
    border: 0 !important;
    border-radius: 0 !important;
    z-index: 10080 !important;
    box-shadow: none !important;
    color: #fff !important;
    font-size: 44px !important;
    line-height: 1 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-prev {
    left: 0 !important;
    right: auto !important;
    background: linear-gradient(to right, rgba(0,0,0,.88), rgba(0,0,0,.08), rgba(0,0,0,0)) !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-next {
    right: 0 !important;
    left: auto !important;
    background: linear-gradient(to left, rgba(0,0,0,.88), rgba(0,0,0,.08), rgba(0,0,0,0)) !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-prev:hover {
    background: linear-gradient(to right, rgba(0,0,0,.94), rgba(0,0,0,.12), rgba(0,0,0,0)) !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-next:hover {
    background: linear-gradient(to left, rgba(0,0,0,.94), rgba(0,0,0,.12), rgba(0,0,0,0)) !important;
}

@media (max-width: 1200px) {
    .gpl-streamlearn.gpl-library-v2 {
        --gpl-frame-pad: 44px !important;
        --gpl-row-bleed: 44px !important;
        --gpl-arrow-zone: 46px !important;
    }

    .gpl-streamlearn.gpl-library-v2 .gpl-card {
        flex-basis: calc((100% - 42px) / 4.2) !important;
    }
}

@media (max-width: 767px) {
    .gpl-streamlearn.gpl-library-v2 {
        --gpl-frame-pad: 16px !important;
        --gpl-row-bleed: 0px !important;
        --gpl-arrow-zone: 0px !important;
    }

    .gpl-streamlearn.gpl-library-v2 .gpl-row-strip {
        margin-left: 0 !important;
        margin-right: 0 !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    .gpl-streamlearn.gpl-library-v2 .gpl-card {
        flex-basis: 74vw !important;
    }
}


/* StreamLearn clean Journey carousel model v1.4.7
   One model only for journey rows:
   - content frame = 1475px max, centered
   - carousel row = content frame + 107px overflow lane
   - 6 cards fit exactly inside content frame
   - arrows live in overflow lanes
*/
@media (min-width: 1201px) {
    html body .gpl-streamlearn.gpl-library-v2 section.gpl-row.gpl-row-journey {
        --gpl-content-frame: min(1475px, calc(100vw - 215px));
        --gpl-overflow-lane: 53.5px;
        --gpl-carousel-width: calc(var(--gpl-content-frame) + (2 * var(--gpl-overflow-lane)));
        --gpl-card-gap: 14px;
        --gpl-card-width: calc((var(--gpl-content-frame) - (5 * var(--gpl-card-gap))) / 6);
        width: var(--gpl-carousel-width) !important;
        max-width: var(--gpl-carousel-width) !important;
        margin-left: auto !important;
        margin-right: auto !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        overflow: visible !important;
        box-sizing: border-box !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 section.gpl-row.gpl-row-journey .gpl-row-header {
        width: var(--gpl-content-frame) !important;
        max-width: var(--gpl-content-frame) !important;
        margin-left: auto !important;
        margin-right: auto !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        box-sizing: border-box !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 section.gpl-row.gpl-row-journey .gpl-row-strip {
        position: relative !important;
        width: var(--gpl-carousel-width) !important;
        max-width: var(--gpl-carousel-width) !important;
        margin-left: auto !important;
        margin-right: auto !important;
        padding: 0 !important;
        overflow: visible !important;
        box-sizing: border-box !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 section.gpl-row.gpl-row-journey .gpl-card-row {
        display: flex !important;
        align-items: stretch !important;
        gap: var(--gpl-card-gap) !important;
        width: var(--gpl-carousel-width) !important;
        max-width: var(--gpl-carousel-width) !important;
        margin: 0 !important;
        padding: 8px var(--gpl-overflow-lane) 32px var(--gpl-overflow-lane) !important;
        box-sizing: border-box !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        scroll-behavior: smooth !important;
        scroll-snap-type: x mandatory !important;
        scroll-padding-left: var(--gpl-overflow-lane) !important;
        scroll-padding-right: var(--gpl-overflow-lane) !important;
        scrollbar-width: none !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 section.gpl-row.gpl-row-journey .gpl-card-row::-webkit-scrollbar {
        display: none !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 section.gpl-row.gpl-row-journey .gpl-card {
        flex: 0 0 var(--gpl-card-width) !important;
        width: var(--gpl-card-width) !important;
        min-width: var(--gpl-card-width) !important;
        max-width: var(--gpl-card-width) !important;
        box-sizing: border-box !important;
        scroll-snap-align: start !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 section.gpl-row.gpl-row-journey .gpl-row-arrow {
        position: absolute !important;
        top: 8px !important;
        bottom: 32px !important;
        transform: none !important;
        width: var(--gpl-overflow-lane) !important;
        min-width: var(--gpl-overflow-lane) !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        z-index: 10080 !important;
        border: 0 !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        padding: 0 !important;
        color: #fff !important;
        font-size: 46px !important;
        line-height: 1 !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 section.gpl-row.gpl-row-journey .gpl-row-prev {
        left: 0 !important;
        right: auto !important;
        background: linear-gradient(to right, rgba(0,0,0,.92), rgba(0,0,0,.20), rgba(0,0,0,0)) !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 section.gpl-row.gpl-row-journey .gpl-row-next {
        right: 0 !important;
        left: auto !important;
        background: linear-gradient(to left, rgba(0,0,0,.92), rgba(0,0,0,.20), rgba(0,0,0,0)) !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 section.gpl-row.gpl-row-journey .gpl-row-prev.is-hidden,
    html body .gpl-streamlearn.gpl-library-v2 section.gpl-row.gpl-row-journey .gpl-row-next.is-hidden {
        opacity: 0 !important;
        pointer-events: none !important;
    }
}

@media (min-width: 768px) and (max-width: 1200px) {
    html body .gpl-streamlearn.gpl-library-v2 section.gpl-row.gpl-row-journey {
        --gpl-card-gap: 12px;
        --gpl-overflow-lane: 42px;
        --gpl-content-frame: calc(100vw - 128px);
        --gpl-carousel-width: calc(var(--gpl-content-frame) + (2 * var(--gpl-overflow-lane)));
        --gpl-card-width: calc((var(--gpl-content-frame) - (4 * var(--gpl-card-gap))) / 5);
        width: var(--gpl-carousel-width) !important;
        max-width: var(--gpl-carousel-width) !important;
        margin-left: auto !important;
        margin-right: auto !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        overflow: visible !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 section.gpl-row.gpl-row-journey .gpl-row-header {
        width: var(--gpl-content-frame) !important;
        max-width: var(--gpl-content-frame) !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 section.gpl-row.gpl-row-journey .gpl-row-strip,
    html body .gpl-streamlearn.gpl-library-v2 section.gpl-row.gpl-row-journey .gpl-card-row {
        width: var(--gpl-carousel-width) !important;
        max-width: var(--gpl-carousel-width) !important;
        margin: 0 auto !important;
        box-sizing: border-box !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 section.gpl-row.gpl-row-journey .gpl-card-row {
        padding: 8px var(--gpl-overflow-lane) 28px !important;
        gap: var(--gpl-card-gap) !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 section.gpl-row.gpl-row-journey .gpl-card {
        flex: 0 0 var(--gpl-card-width) !important;
        width: var(--gpl-card-width) !important;
        min-width: var(--gpl-card-width) !important;
        max-width: var(--gpl-card-width) !important;
    }
}


/* StreamLearn final carousel and mobile portrait model v1.5.0 */
.gpl-streamlearn.gpl-library-v2 .gpl-card-image {
    background-image: var(--gpl-card-bg) !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-mobile-card-actions {
    display: none;
}

@media (min-width: 1201px) {
    html body .gpl-streamlearn.gpl-library-v2 section.gpl-row.gpl-row-journey {
        --gpl-content-frame: min(1540px, calc(100vw - 136px)) !important;
        --gpl-overflow-lane: 34px !important;
        --gpl-carousel-width: calc(var(--gpl-content-frame) + (2 * var(--gpl-overflow-lane))) !important;
        --gpl-card-gap: 14px !important;
        --gpl-card-width: calc((var(--gpl-content-frame) - (5.5 * var(--gpl-card-gap))) / 6.5) !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 section.gpl-row.gpl-row-journey .gpl-card-row {
        width: var(--gpl-carousel-width) !important;
        max-width: var(--gpl-carousel-width) !important;
        padding-left: var(--gpl-overflow-lane) !important;
        padding-right: var(--gpl-overflow-lane) !important;
        gap: var(--gpl-card-gap) !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 section.gpl-row.gpl-row-journey .gpl-card {
        flex: 0 0 var(--gpl-card-width) !important;
        width: var(--gpl-card-width) !important;
        min-width: var(--gpl-card-width) !important;
        max-width: var(--gpl-card-width) !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 section.gpl-row.gpl-row-journey .gpl-row-arrow {
        width: var(--gpl-overflow-lane) !important;
        min-width: var(--gpl-overflow-lane) !important;
        font-size: 62px !important;
        font-weight: 500 !important;
        color: #fff !important;
        opacity: 1 !important;
        text-shadow: 0 2px 10px rgba(0,0,0,.95) !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 section.gpl-row.gpl-row-journey .gpl-row-prev {
        left: 0 !important;
        background: linear-gradient(to right, rgba(0,0,0,.70), rgba(0,0,0,0)) !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 section.gpl-row.gpl-row-journey .gpl-row-next {
        right: 0 !important;
        background: linear-gradient(to left, rgba(0,0,0,.70), rgba(0,0,0,0)) !important;
    }
}

@media (max-width: 767px) {
    .gpl-streamlearn.gpl-library-v2 {
        --gpl-mobile-gap: 10px !important;
    }

    .gpl-streamlearn.gpl-library-v2 .gpl-row {
        padding-left: 18px !important;
        padding-right: 0 !important;
        margin-bottom: 24px !important;
    }

    .gpl-streamlearn.gpl-library-v2 .gpl-row-header {
        padding-right: 18px !important;
        margin-bottom: 10px !important;
    }

    .gpl-streamlearn.gpl-library-v2 .gpl-row-header h2 {
        font-size: 22px !important;
        line-height: 1.15 !important;
    }

    .gpl-streamlearn.gpl-library-v2 .gpl-row-strip {
        margin: 0 !important;
        padding: 0 !important;
        overflow: visible !important;
    }

    .gpl-streamlearn.gpl-library-v2 .gpl-card-row {
        gap: var(--gpl-mobile-gap) !important;
        padding: 0 18px 8px 0 !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        scroll-snap-type: x mandatory !important;
        -webkit-overflow-scrolling: touch !important;
        scrollbar-width: none !important;
    }

    .gpl-streamlearn.gpl-library-v2 .gpl-card-row::-webkit-scrollbar {
        display: none !important;
    }

    .gpl-streamlearn.gpl-library-v2 .gpl-card,
    html body .gpl-streamlearn.gpl-library-v2 section.gpl-row.gpl-row-journey .gpl-card {
        flex: 0 0 30vw !important;
        width: 30vw !important;
        min-width: 116px !important;
        max-width: 168px !important;
        border-radius: 7px !important;
        border: 0 !important;
        background: #111 !important;
        overflow: hidden !important;
        transform: none !important;
        scroll-snap-align: start !important;
    }

    .gpl-streamlearn.gpl-library-v2 .gpl-card > a {
        border-radius: 7px !important;
        overflow: hidden !important;
    }

    .gpl-streamlearn.gpl-library-v2 .gpl-card:hover {
        transform: none !important;
    }

    .gpl-streamlearn.gpl-library-v2 .gpl-card-image {
        aspect-ratio: 2 / 3 !important;
        background-image: var(--gpl-portrait-bg) !important;
        background-size: cover !important;
        background-position: center !important;
    }

    .gpl-streamlearn.gpl-library-v2 .gpl-card-image:after {
        background: linear-gradient(180deg, transparent 45%, rgba(0,0,0,.62)) !important;
    }

    .gpl-streamlearn.gpl-library-v2 .gpl-card-body,
    .gpl-streamlearn.gpl-library-v2 .gpl-hover-card,
    .gpl-card-preview-portal {
        display: none !important;
    }

    .gpl-streamlearn.gpl-library-v2 .gpl-card-badge {
        left: 6px !important;
        bottom: 6px !important;
        font-size: 8px !important;
        padding: 3px 6px !important;
        border-radius: 2px !important;
    }

    .gpl-streamlearn.gpl-library-v2 .gpl-progress {
        left: 7px !important;
        right: 7px !important;
        bottom: 34px !important;
        height: 4px !important;
        background: rgba(210,210,210,.78) !important;
        z-index: 4 !important;
    }

    .gpl-streamlearn.gpl-library-v2 .gpl-mobile-card-actions {
        position: absolute !important;
        left: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        height: 34px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: space-around !important;
        background: rgba(18,18,18,.96) !important;
        z-index: 5 !important;
    }

    .gpl-streamlearn.gpl-library-v2 .gpl-mobile-card-actions a {
        width: 28px !important;
        height: 28px !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        border-radius: 50% !important;
        border: 2px solid rgba(255,255,255,.9) !important;
        color: #fff !important;
        text-decoration: none !important;
        font-size: 15px !important;
        font-weight: 800 !important;
        line-height: 1 !important;
        background: rgba(0,0,0,.18) !important;
    }

    .gpl-streamlearn.gpl-library-v2 .gpl-mobile-card-actions .gpl-mobile-info {
        font-family: Georgia, serif !important;
        font-style: italic !important;
        font-size: 19px !important;
    }

    .gpl-streamlearn.gpl-library-v2 .gpl-row-arrow {
        display: none !important;
    }
}

/* GoPeter StreamLearn v1.5.1 - final desktop carousel sizing fix.
   Applies to all journey rows, not only rows with the literal .gpl-row-journey class. */
@media (min-width: 1201px) {
    html body .gpl-streamlearn.gpl-library-v2 .gpl-row {
        --gpl-content-frame: min(1540px, calc(100vw - 136px)) !important;
        --gpl-overflow-lane: 44px !important;
        --gpl-carousel-width: calc(var(--gpl-content-frame) + (2 * var(--gpl-overflow-lane))) !important;
        --gpl-card-gap: 14px !important;
        --gpl-card-width: calc((var(--gpl-content-frame) - (5.5 * var(--gpl-card-gap))) / 6.5) !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-row-strip {
        width: var(--gpl-carousel-width) !important;
        max-width: var(--gpl-carousel-width) !important;
        margin-left: calc(-1 * var(--gpl-overflow-lane)) !important;
        margin-right: calc(-1 * var(--gpl-overflow-lane)) !important;
        padding: 0 !important;
        overflow: visible !important;
        position: relative !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-card-row {
        width: var(--gpl-carousel-width) !important;
        max-width: var(--gpl-carousel-width) !important;
        padding-left: var(--gpl-overflow-lane) !important;
        padding-right: var(--gpl-overflow-lane) !important;
        gap: var(--gpl-card-gap) !important;
        overflow-x: auto !important;
        overflow-y: visible !important;
        scrollbar-width: none !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-card-row::-webkit-scrollbar {
        display: none !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-card {
        flex: 0 0 var(--gpl-card-width) !important;
        width: var(--gpl-card-width) !important;
        min-width: var(--gpl-card-width) !important;
        max-width: var(--gpl-card-width) !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-row-arrow {
        width: 64px !important;
        min-width: 64px !important;
        height: 100% !important;
        top: 0 !important;
        transform: none !important;
        font-size: 76px !important;
        line-height: 1 !important;
        font-weight: 500 !important;
        color: #fff !important;
        opacity: 1 !important;
        z-index: 20 !important;
        text-shadow: 0 2px 12px rgba(0,0,0,.95) !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-row-prev {
        left: 0 !important;
        background: linear-gradient(to right, rgba(0,0,0,.82), rgba(0,0,0,0)) !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-row-next {
        right: 0 !important;
        background: linear-gradient(to left, rgba(0,0,0,.82), rgba(0,0,0,0)) !important;
    }
}

/* GoPeter StreamLearn v1.5.2 - desktop row alignment correction.
   Keep the carousel inside the normal row frame and calculate 6.5 cards from the actual available width. */
@media (min-width: 1201px) {
    html body .gpl-streamlearn.gpl-library-v2 .gpl-row {
        --gpl-card-gap: 14px !important;
        --gpl-card-width: calc((100% - (5.5 * var(--gpl-card-gap))) / 6.5) !important;
        padding-left: clamp(24px, 2.2vw, 44px) !important;
        padding-right: clamp(24px, 2.2vw, 44px) !important;
        overflow: visible !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-row-header {
        width: 100% !important;
        max-width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-row-strip {
        width: 100% !important;
        max-width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        padding: 0 !important;
        overflow: visible !important;
        position: relative !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-card-row {
        width: 100% !important;
        max-width: 100% !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        padding-top: 8px !important;
        padding-bottom: 18px !important;
        margin: 0 !important;
        gap: var(--gpl-card-gap) !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        scrollbar-width: none !important;
        scroll-padding-left: 0 !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-card {
        flex: 0 0 var(--gpl-card-width) !important;
        width: var(--gpl-card-width) !important;
        min-width: var(--gpl-card-width) !important;
        max-width: var(--gpl-card-width) !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-row-arrow {
        width: 56px !important;
        min-width: 56px !important;
        height: calc(100% - 26px) !important;
        top: 8px !important;
        transform: none !important;
        font-size: 70px !important;
        line-height: 1 !important;
        font-weight: 500 !important;
        color: #fff !important;
        opacity: 1 !important;
        z-index: 30 !important;
        text-shadow: 0 2px 12px rgba(0,0,0,.95) !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-row-prev {
        left: 0 !important;
        background: linear-gradient(to right, rgba(0,0,0,.82), rgba(0,0,0,0)) !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-row-next {
        right: 0 !important;
        background: linear-gradient(to left, rgba(0,0,0,.82), rgba(0,0,0,0)) !important;
    }
}

/* GoPeter StreamLearn v1.5.3 - fixed desktop frame width and clickable arrows.
   6.5 cards stay inside a sane content frame; arrows are inside the row, not outside the page. */
@media (min-width: 1201px) {
    html body .gpl-streamlearn.gpl-library-v2 .gpl-row {
        --gpl-card-gap: 14px !important;
        --gpl-row-frame: min(1600px, calc(100vw - 160px)) !important;
        --gpl-card-width: calc((var(--gpl-row-frame) - (5.5 * var(--gpl-card-gap))) / 6.5) !important;
        width: var(--gpl-row-frame) !important;
        max-width: var(--gpl-row-frame) !important;
        margin-left: auto !important;
        margin-right: auto !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        overflow: visible !important;
        box-sizing: border-box !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-row-header,
    html body .gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-row-strip,
    html body .gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-card-row {
        width: 100% !important;
        max-width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        box-sizing: border-box !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-row-strip {
        position: relative !important;
        padding: 0 !important;
        overflow: visible !important;
        z-index: 1 !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-card-row {
        display: flex !important;
        gap: var(--gpl-card-gap) !important;
        padding: 8px 0 22px 0 !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        scrollbar-width: none !important;
        scroll-behavior: smooth !important;
        scroll-padding-left: 0 !important;
        scroll-padding-right: 0 !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-card-row::-webkit-scrollbar {
        display: none !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-card {
        flex: 0 0 var(--gpl-card-width) !important;
        width: var(--gpl-card-width) !important;
        min-width: var(--gpl-card-width) !important;
        max-width: var(--gpl-card-width) !important;
        box-sizing: border-box !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-row-arrow {
        position: absolute !important;
        top: 8px !important;
        bottom: 22px !important;
        transform: none !important;
        width: 64px !important;
        min-width: 64px !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        z-index: 500000 !important;
        pointer-events: auto !important;
        cursor: pointer !important;
        border: 0 !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        padding: 0 !important;
        color: #fff !important;
        font-size: 72px !important;
        line-height: 1 !important;
        font-weight: 600 !important;
        text-shadow: 0 2px 14px rgba(0,0,0,.98) !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-row-prev {
        left: 0 !important;
        right: auto !important;
        background: linear-gradient(to right, rgba(0,0,0,.88), rgba(0,0,0,.18), rgba(0,0,0,0)) !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-row-next {
        right: 0 !important;
        left: auto !important;
        background: linear-gradient(to left, rgba(0,0,0,.88), rgba(0,0,0,.18), rgba(0,0,0,0)) !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-row-arrow:hover {
        opacity: 1 !important;
        color: #fff !important;
    }
}

@media (min-width: 1201px) and (max-width: 1500px) {
    html body .gpl-streamlearn.gpl-library-v2 .gpl-row {
        --gpl-row-frame: calc(100vw - 96px) !important;
    }
}


/* GoPeter StreamLearn v1.5.4 - carousel arrows outside content area.
   Keep 6.5 cards in the row; show arrows only when 7+ items actually overflow. */
@media (min-width: 1201px) {
    html body .gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-row-strip {
        overflow: visible !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 .gpl-row:not(.gpl-row-has-arrows) .gpl-row-arrow,
    html body .gpl-streamlearn.gpl-library-v2 .gpl-row.gpl-row-no-arrows .gpl-row-arrow,
    html body .gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-row-arrow.is-hidden,
    html body .gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-row-arrow:disabled {
        display: none !important;
        visibility: hidden !important;
        opacity: 0 !important;
        pointer-events: none !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 .gpl-row.gpl-row-has-arrows .gpl-row-arrow:not(.is-hidden) {
        display: flex !important;
        visibility: visible !important;
        opacity: 1 !important;
        pointer-events: auto !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 .gpl-row.gpl-row-has-arrows .gpl-row-arrow {
        position: absolute !important;
        top: 8px !important;
        bottom: 22px !important;
        width: 52px !important;
        min-width: 52px !important;
        height: auto !important;
        align-items: center !important;
        justify-content: center !important;
        z-index: 900000 !important;
        border: 0 !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        cursor: pointer !important;
        color: #fff !important;
        font-size: 68px !important;
        line-height: 1 !important;
        font-weight: 700 !important;
        text-shadow: 0 2px 16px rgba(0,0,0,1) !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 .gpl-row.gpl-row-has-arrows .gpl-row-prev {
        left: -58px !important;
        right: auto !important;
        background: linear-gradient(to right, rgba(0,0,0,.62), rgba(0,0,0,0)) !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 .gpl-row.gpl-row-has-arrows .gpl-row-next {
        right: -58px !important;
        left: auto !important;
        background: linear-gradient(to left, rgba(0,0,0,.62), rgba(0,0,0,0)) !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 .gpl-row.gpl-row-has-arrows .gpl-row-arrow:hover {
        color: #fff !important;
        opacity: 1 !important;
    }

    html body .gpl-card-preview-portal {
        z-index: 800000 !important;
    }
}

/* GoPeter StreamLearn v1.5.5 - journey stats alignment refinement. */
@media (min-width: 901px) {
    .gpl-journey-detail-v2 .gpl-journey-stats {
        transform: translateX(90px) !important;
    }
}

@media (max-width: 900px) {
    .gpl-journey-detail-v2 .gpl-journey-stats {
        transform: none !important;
    }
}


/* GoPeter StreamLearn v1.5.6 - thicker episode player back arrow. */
.gpl-episode-page-fullscreen .gpl-player-back {
    position: relative !important;
    font-size: 0 !important;
}

.gpl-episode-page-fullscreen .gpl-player-back::before {
    content: "" !important;
    position: absolute !important;
    width: 30px !important;
    height: 4px !important;
    left: 19px !important;
    top: 30px !important;
    background: #fff !important;
    border-radius: 999px !important;
}

.gpl-episode-page-fullscreen .gpl-player-back::after {
    content: "" !important;
    position: absolute !important;
    width: 15px !important;
    height: 15px !important;
    left: 18px !important;
    top: 23px !important;
    border-left: 4px solid #fff !important;
    border-bottom: 4px solid #fff !important;
    border-radius: 2px !important;
    transform: rotate(45deg) !important;
}

/* GoPeter StreamLearn v1.5.7 - episode portrait image backend support. */

/* GoPeter StreamLearn v1.5.8 - mobile portrait card control model */
@media (max-width: 767px) {
    html body .gpl-streamlearn.gpl-library-v2 .gpl-row {
        padding-left: 14px !important;
        padding-right: 0 !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 .gpl-card-row {
        gap: 10px !important;
        padding-right: 14px !important;
        align-items: flex-start !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 .gpl-card,
    html body .gpl-streamlearn.gpl-library-v2 section.gpl-row.gpl-row-journey .gpl-card {
        flex: 0 0 31vw !important;
        width: 31vw !important;
        min-width: 118px !important;
        max-width: 160px !important;
        background: transparent !important;
        border: 0 !important;
        border-radius: 7px !important;
        overflow: hidden !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 .gpl-card > a,
    html body .gpl-streamlearn.gpl-library-v2 .gpl-episode-card-link {
        display: block !important;
        border-radius: 7px !important;
        overflow: hidden !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 .gpl-card-image {
        aspect-ratio: 2 / 3 !important;
        height: auto !important;
        min-height: 0 !important;
        background-image: var(--gpl-portrait-bg) !important;
        background-size: cover !important;
        background-position: center center !important;
        border-radius: 7px !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 .gpl-card-image::after,
    html body .gpl-streamlearn.gpl-library-v2 .gpl-card-badge,
    html body .gpl-streamlearn.gpl-library-v2 .gpl-card-action,
    html body .gpl-streamlearn.gpl-library-v2 .gpl-mobile-card-actions {
        display: none !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 .gpl-row-continue-watching .gpl-card-image::after,
    html body .gpl-streamlearn.gpl-library-v2 .gpl-row-continue-watching .gpl-mobile-card-actions {
        display: flex !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 .gpl-row-continue-watching .gpl-card-image::after {
        content: '' !important;
        position: absolute !important;
        left: 0 !important;
        right: 0 !important;
        top: auto !important;
        bottom: 0 !important;
        height: 36px !important;
        background: rgba(18,18,18,.95) !important;
        z-index: 2 !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 .gpl-row-continue-watching .gpl-progress {
        left: 7px !important;
        right: 7px !important;
        bottom: 36px !important;
        height: 4px !important;
        z-index: 5 !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 .gpl-mobile-card-play {
        position: absolute !important;
        left: 50% !important;
        top: calc(50% - 18px) !important;
        width: 40px !important;
        height: 40px !important;
        transform: translate(-50%, -50%) !important;
        border: 2px solid rgba(255,255,255,.95) !important;
        border-radius: 50% !important;
        background: rgba(0,0,0,.25) !important;
        z-index: 6 !important;
        pointer-events: none !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 .gpl-mobile-card-play::before {
        content: '' !important;
        position: absolute !important;
        left: 15px !important;
        top: 10px !important;
        width: 0 !important;
        height: 0 !important;
        border-top: 9px solid transparent !important;
        border-bottom: 9px solid transparent !important;
        border-left: 14px solid #fff !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 .gpl-row-continue-watching .gpl-mobile-card-actions {
        position: absolute !important;
        left: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        height: 36px !important;
        align-items: center !important;
        justify-content: space-around !important;
        background: transparent !important;
        z-index: 7 !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 .gpl-row-continue-watching .gpl-mobile-card-actions a,
    html body .gpl-streamlearn.gpl-library-v2 .gpl-row-continue-watching .gpl-mobile-card-actions button {
        width: 28px !important;
        height: 28px !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        border: 2px solid rgba(255,255,255,.95) !important;
        border-radius: 50% !important;
        color: #fff !important;
        background: rgba(0,0,0,.20) !important;
        text-decoration: none !important;
        font-size: 20px !important;
        font-weight: 800 !important;
        line-height: 1 !important;
        padding: 0 !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 .gpl-row-continue-watching .gpl-mobile-info {
        font-family: Georgia, serif !important;
        font-style: italic !important;
        font-size: 21px !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 .gpl-row-continue-watching .gpl-mobile-more {
        font-size: 22px !important;
        letter-spacing: -1px !important;
    }
}

.gpl-mobile-action-sheet {
    position: fixed;
    inset: 0;
    z-index: 100000;
    display: none;
    background: rgba(0,0,0,.72);
}

.gpl-mobile-action-sheet.is-open {
    display: block;
}

.gpl-mobile-action-panel {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 22px 20px 28px;
    background: #2b2b2b;
    border-radius: 18px 18px 0 0;
    color: #fff;
    font-family: inherit;
}

.gpl-mobile-action-title {
    display: block;
    margin: 0 48px 22px 0;
    font-size: 22px;
    font-weight: 800;
    line-height: 1.2;
}

.gpl-mobile-action-close {
    position: absolute;
    top: 18px;
    right: 18px;
    width: 42px;
    height: 42px;
    border: 0;
    border-radius: 50%;
    color: #fff;
    background: rgba(255,255,255,.18);
    font-size: 34px;
    line-height: 1;
}

.gpl-mobile-action-item {
    width: 100%;
    min-height: 50px;
    display: flex;
    align-items: center;
    gap: 18px;
    border: 0;
    background: transparent;
    color: #fff;
    text-decoration: none;
    font-size: 20px;
    text-align: left;
    padding: 8px 0;
}

.gpl-mobile-action-icon {
    width: 36px;
    display: inline-flex;
    justify-content: center;
    font-size: 25px;
    opacity: .95;
}

/* GoPeter StreamLearn v1.5.9 - final mobile portrait sizing and action sheet close style */
@media (max-width: 767px) {
    html body .gpl-streamlearn.gpl-library-v2 .gpl-card > a,
    html body .gpl-streamlearn.gpl-library-v2 .gpl-episode-card-link {
        display: block !important;
        aspect-ratio: 2 / 3 !important;
        height: auto !important;
        border-radius: 7px !important;
        overflow: hidden !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 .gpl-card-image,
    html body .gpl-streamlearn.gpl-library-v2 .gpl-episode-card .gpl-card-image,
    html body .gpl-streamlearn.gpl-library-v2 .gpl-journey-card .gpl-card-image {
        display: block !important;
        width: 100% !important;
        height: 100% !important;
        min-height: 100% !important;
        aspect-ratio: auto !important;
        background-image: var(--gpl-portrait-bg) !important;
        background-size: cover !important;
        background-position: center center !important;
        border-radius: 7px !important;
        overflow: hidden !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 .gpl-row-continue-watching .gpl-card-image {
        position: relative !important;
    }
}

.gpl-mobile-action-close {
    top: 18px !important;
    right: 18px !important;
    width: 32px !important;
    height: 32px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: #fff !important;
    font-size: 36px !important;
    font-weight: 300 !important;
    line-height: 28px !important;
    padding: 0 !important;
    box-shadow: none !important;
}

.gpl-mobile-action-close:hover,
.gpl-mobile-action-close:focus,
.gpl-mobile-action-close:active {
    background: transparent !important;
    color: #fff !important;
    box-shadow: none !important;
    outline: none !important;
}

/* GoPeter StreamLearn v1.6.0 - mobile progress, episode list, and player responsiveness */
@media (max-width: 767px) {
    html body .gpl-streamlearn.gpl-library-v2 .gpl-card-image {
        position: relative !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 .gpl-card-image .gpl-progress,
    html body .gpl-streamlearn.gpl-library-v2 .gpl-progress {
        position: absolute !important;
        left: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        top: auto !important;
        width: 100% !important;
        height: 4px !important;
        margin: 0 !important;
        background: rgba(255,255,255,.55) !important;
        border-radius: 0 !important;
        z-index: 6 !important;
        overflow: hidden !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 .gpl-card-image .gpl-progress span,
    html body .gpl-streamlearn.gpl-library-v2 .gpl-progress span {
        display: block !important;
        height: 100% !important;
        background: #e50914 !important;
        border-radius: 0 !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 .gpl-row-continue-watching .gpl-progress {
        left: 0 !important;
        right: 0 !important;
        bottom: 36px !important;
        width: 100% !important;
    }

    html body .gpl-journey-detail-v2 .gpl-season-shell {
        width: calc(100vw - 40px) !important;
        max-width: calc(100vw - 40px) !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }

    html body .gpl-journey-detail-v2 .gpl-season-header {
        display: block !important;
    }

    html body .gpl-journey-detail-v2 .gpl-season-select {
        width: 100% !important;
        max-width: none !important;
        margin-top: 16px !important;
    }

    html body .gpl-journey-detail-v2 .gpl-episode-item-v2 > a {
        display: grid !important;
        grid-template-columns: 104px minmax(0, 1fr) auto !important;
        gap: 12px !important;
        align-items: center !important;
        padding: 16px 0 !important;
        width: 100% !important;
        min-width: 0 !important;
    }

    html body .gpl-journey-detail-v2 .gpl-episode-number {
        display: none !important;
    }

    html body .gpl-journey-detail-v2 .gpl-episode-thumb {
        grid-column: 1 !important;
        width: 104px !important;
        min-width: 104px !important;
        aspect-ratio: 16 / 9 !important;
        align-self: center !important;
    }

    html body .gpl-journey-detail-v2 .gpl-episode-info {
        grid-column: 2 !important;
        min-width: 0 !important;
        width: auto !important;
    }

    html body .gpl-journey-detail-v2 .gpl-episode-info h4 {
        margin: 0 0 4px !important;
        font-size: 15px !important;
        line-height: 1.2 !important;
        white-space: normal !important;
    }

    html body .gpl-journey-detail-v2 .gpl-episode-info p {
        margin: 0 !important;
        max-width: none !important;
        font-size: 13px !important;
        line-height: 1.3 !important;
        display: -webkit-box !important;
        -webkit-line-clamp: 2 !important;
        -webkit-box-orient: vertical !important;
        overflow: hidden !important;
    }

    html body .gpl-journey-detail-v2 .gpl-episode-duration {
        grid-column: 3 !important;
        display: block !important;
        min-width: 42px !important;
        font-size: 13px !important;
        text-align: right !important;
        white-space: nowrap !important;
    }
}

@media (max-width: 767px) and (orientation: portrait) {
    body.single-gpl_episode .gpl-episode-page-fullscreen {
        position: relative !important;
        inset: auto !important;
        z-index: auto !important;
        width: 100% !important;
        min-height: 100vh !important;
        height: auto !important;
        overflow: visible !important;
    }

    .gpl-episode-page-fullscreen .gpl-player-fullscreen {
        display: flex !important;
        flex-direction: column !important;
        width: 100% !important;
        height: auto !important;
        min-height: 100vh !important;
        overflow: visible !important;
        padding: 22px 20px 34px !important;
        box-sizing: border-box !important;
    }

    .gpl-episode-page-fullscreen .gpl-player-top {
        order: 1 !important;
        position: relative !important;
        display: flex !important;
        opacity: 1 !important;
        pointer-events: auto !important;
        padding: 0 0 18px !important;
        background: transparent !important;
    }

    .gpl-episode-page-fullscreen .gpl-player-back {
        width: 52px !important;
        height: 52px !important;
        flex: 0 0 52px !important;
    }

    .gpl-episode-page-fullscreen .gpl-video-wrap-fullscreen {
        order: 2 !important;
        width: calc(100vw - 40px) !important;
        height: auto !important;
        aspect-ratio: 16 / 9 !important;
        margin: 0 !important;
        overflow: hidden !important;
    }

    .gpl-episode-page-fullscreen .gpl-video-wrap-fullscreen iframe,
    .gpl-episode-page-fullscreen .gpl-video-wrap-fullscreen video {
        width: 100% !important;
        height: 100% !important;
        object-fit: contain !important;
    }

    .gpl-episode-page-fullscreen .gpl-player-bottom {
        order: 3 !important;
        position: relative !important;
        display: block !important;
        opacity: 1 !important;
        pointer-events: auto !important;
        bottom: auto !important;
        padding: 22px 0 0 !important;
        background: transparent !important;
    }

    .gpl-episode-page-fullscreen .gpl-player-info h1 {
        font-size: 24px !important;
    }

    .gpl-episode-page-fullscreen .gpl-player-info p {
        font-size: 14px !important;
    }

    .gpl-episode-page-fullscreen .gpl-player-controls {
        justify-content: flex-start !important;
        gap: 10px !important;
        margin-top: 24px !important;
    }

    .gpl-episode-page-fullscreen .gpl-player-icon-link {
        min-height: 46px !important;
        padding: 10px 16px !important;
        font-size: 13px !important;
    }
}

@media (max-width: 900px) and (orientation: landscape) {
    body.single-gpl_episode .gpl-episode-page-fullscreen,
    .gpl-episode-page-fullscreen .gpl-player-fullscreen,
    .gpl-episode-page-fullscreen .gpl-video-wrap-fullscreen,
    .gpl-episode-page-fullscreen .gpl-video-wrap-fullscreen iframe,
    .gpl-episode-page-fullscreen .gpl-video-wrap-fullscreen video {
        position: fixed !important;
        inset: 0 !important;
        width: 100vw !important;
        height: 100vh !important;
        max-width: none !important;
        margin: 0 !important;
        padding: 0 !important;
        z-index: 100000 !important;
        background: #000 !important;
    }

    .gpl-episode-page-fullscreen .gpl-player-bottom {
        display: none !important;
    }

    .gpl-episode-page-fullscreen .gpl-player-top {
        position: absolute !important;
        top: 0 !important;
        left: 0 !important;
        right: 0 !important;
        opacity: 1 !important;
        pointer-events: auto !important;
        padding: 10px 16px 70px !important;
        background: linear-gradient(180deg, rgba(0,0,0,.62), rgba(0,0,0,0)) !important;
        z-index: 100005 !important;
    }
}


/* GoPeter StreamLearn v1.6.1 - mobile journey episode width and landscape player back button */
@media (max-width: 767px) {
    html, body {
        max-width: 100% !important;
        overflow-x: hidden !important;
    }

    html body .gpl-journey-detail-v2,
    html body .gpl-journey-detail-v2 * {
        box-sizing: border-box !important;
    }

    html body .gpl-journey-detail-v2 .gpl-season-shell,
    html body .gpl-journey-detail-v2 .gpl-season-section,
    html body .gpl-journey-detail-v2 .gpl-episode-list,
    html body .gpl-journey-detail-v2 .gpl-episode-list-v2 {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        overflow: hidden !important;
    }

    html body .gpl-journey-detail-v2 .gpl-season-shell {
        width: calc(100vw - 32px) !important;
        max-width: calc(100vw - 32px) !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }

    html body .gpl-journey-detail-v2 .gpl-season-select,
    html body .gpl-journey-detail-v2 select {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
    }

    html body .gpl-journey-detail-v2 .gpl-episode-item-v2 {
        width: 100% !important;
        max-width: 100% !important;
        overflow: hidden !important;
    }

    html body .gpl-journey-detail-v2 .gpl-episode-item-v2 > a {
        position: relative !important;
        display: grid !important;
        grid-template-columns: 96px minmax(0, 1fr) 42px !important;
        column-gap: 12px !important;
        align-items: center !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        padding: 16px 0 !important;
        overflow: hidden !important;
    }

    html body .gpl-journey-detail-v2 .gpl-episode-number {
        display: none !important;
    }

    html body .gpl-journey-detail-v2 .gpl-episode-thumb {
        grid-column: 1 !important;
        width: 96px !important;
        min-width: 96px !important;
        max-width: 96px !important;
        height: 54px !important;
        aspect-ratio: 16 / 9 !important;
        margin: 0 !important;
        overflow: hidden !important;
    }

    html body .gpl-journey-detail-v2 .gpl-episode-info {
        grid-column: 2 !important;
        min-width: 0 !important;
        width: auto !important;
        max-width: 100% !important;
        overflow: hidden !important;
    }

    html body .gpl-journey-detail-v2 .gpl-episode-info h4,
    html body .gpl-journey-detail-v2 .gpl-episode-info p {
        max-width: 100% !important;
        overflow-wrap: anywhere !important;
    }

    html body .gpl-journey-detail-v2 .gpl-episode-duration {
        grid-column: 3 !important;
        width: 42px !important;
        min-width: 42px !important;
        max-width: 42px !important;
        text-align: right !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: clip !important;
        justify-self: end !important;
    }
}

@media (max-width: 900px) and (orientation: landscape) {
    body.single-gpl_episode {
        overflow: hidden !important;
        background: #000 !important;
    }

    body.single-gpl_episode .gpl-episode-page-fullscreen,
    .gpl-episode-page-fullscreen .gpl-player-fullscreen {
        position: fixed !important;
        inset: 0 !important;
        width: 100vw !important;
        height: 100vh !important;
        max-width: none !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: hidden !important;
        background: #000 !important;
        z-index: 100000 !important;
    }

    .gpl-episode-page-fullscreen .gpl-video-wrap-fullscreen {
        position: fixed !important;
        inset: 0 !important;
        width: 100vw !important;
        height: 100vh !important;
        max-width: none !important;
        margin: 0 !important;
        padding: 0 !important;
        background: #000 !important;
        z-index: 100001 !important;
    }

    .gpl-episode-page-fullscreen .gpl-video-wrap-fullscreen iframe,
    .gpl-episode-page-fullscreen .gpl-video-wrap-fullscreen video {
        width: 100vw !important;
        height: 100vh !important;
        object-fit: contain !important;
        background: #000 !important;
    }

    .gpl-episode-page-fullscreen .gpl-player-top {
        display: flex !important;
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        right: 0 !important;
        height: 76px !important;
        opacity: 1 !important;
        pointer-events: auto !important;
        padding: 10px 16px !important;
        background: linear-gradient(180deg, rgba(0,0,0,.75), rgba(0,0,0,0)) !important;
        z-index: 100010 !important;
    }

    .gpl-episode-page-fullscreen .gpl-player-back {
        display: flex !important;
        opacity: 1 !important;
        pointer-events: auto !important;
        z-index: 100011 !important;
        background: rgba(0,0,0,.35) !important;
    }
}

/* StreamLearn v1.6.2 mobile Episodes & Info width + portrait lock */
@media (max-width: 600px) {
    html,
    body {
        overflow-x: hidden !important;
    }

    .gpl-journey-detail-v2,
    .gpl-journey-detail-v2 * {
        box-sizing: border-box !important;
    }

    .gpl-journey-detail-v2 .gpl-season-section-v2,
    .gpl-journey-detail-v2 .gpl-season-shell,
    .gpl-journey-detail-v2 .gpl-season-panel,
    .gpl-journey-detail-v2 .gpl-episode-list-v2 {
        width: 100% !important;
        max-width: calc(100vw - 32px) !important;
        margin-left: auto !important;
        margin-right: auto !important;
        overflow: hidden !important;
    }

    .gpl-journey-detail-v2 .gpl-season-select,
    .gpl-journey-detail-v2 select.gpl-season-select {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
    }

    .gpl-journey-detail-v2 .gpl-episode-item-v2 {
        width: 100% !important;
        max-width: 100% !important;
        overflow: hidden !important;
    }

    .gpl-journey-detail-v2 .gpl-episode-item-v2 > a {
        width: 100% !important;
        max-width: 100% !important;
        display: grid !important;
        grid-template-columns: 96px minmax(0, 1fr) !important;
        gap: 14px !important;
        align-items: center !important;
        padding: 18px 0 !important;
        overflow: hidden !important;
    }

    .gpl-journey-detail-v2 .gpl-episode-number,
    .gpl-journey-detail-v2 .gpl-episode-duration {
        display: none !important;
    }

    .gpl-journey-detail-v2 .gpl-episode-thumb {
        grid-column: 1 !important;
        width: 96px !important;
        min-width: 96px !important;
        max-width: 96px !important;
    }

    .gpl-journey-detail-v2 .gpl-episode-info {
        grid-column: 2 !important;
        min-width: 0 !important;
        max-width: 100% !important;
        overflow: hidden !important;
    }

    .gpl-journey-detail-v2 .gpl-episode-info h4,
    .gpl-journey-detail-v2 .gpl-episode-info p {
        max-width: 100% !important;
        overflow-wrap: anywhere !important;
    }
}

@media (max-width: 900px) and (orientation: landscape) and (max-height: 600px) {
    .gpl-journey-detail-v2 {
        min-height: 100vh !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        padding: 24px !important;
        text-align: center !important;
    }

    .gpl-journey-detail-v2 > * {
        display: none !important;
    }

    .gpl-journey-detail-v2::before {
        content: "Rotate your phone back to portrait to view episodes.";
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 100% !important;
        max-width: 420px !important;
        min-height: 160px !important;
        padding: 24px !important;
        border-radius: 18px !important;
        background: rgba(255,255,255,.08) !important;
        border: 1px solid rgba(255,255,255,.18) !important;
        color: #ffffff !important;
        font-size: 20px !important;
        font-weight: 800 !important;
        line-height: 1.3 !important;
    }
}


/* GoPeter StreamLearn v1.6.3 - strict mobile episode list width + native fullscreen player */
@media (max-width: 900px) {
    html,
    body {
        max-width: 100vw !important;
        overflow-x: hidden !important;
    }

    html body .gpl-journey-detail-v2,
    html body .gpl-journey-detail-v2 .gpl-detail-inner,
    html body .gpl-journey-detail-v2 .gpl-journey-body,
    html body .gpl-journey-detail-v2 .gpl-journey-info,
    html body .gpl-journey-detail-v2 .gpl-season-shell,
    html body .gpl-journey-detail-v2 .gpl-season-panel,
    html body .gpl-journey-detail-v2 .gpl-season-section-v2,
    html body .gpl-journey-detail-v2 .gpl-episode-list-v2 {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        overflow-x: hidden !important;
        box-sizing: border-box !important;
    }

    html body .gpl-journey-detail-v2 .gpl-season-section-v2,
    html body .gpl-journey-detail-v2 .gpl-season-shell,
    html body .gpl-journey-detail-v2 .gpl-season-panel {
        padding-left: 0 !important;
        padding-right: 18px !important;
    }

    html body .gpl-journey-detail-v2 .gpl-season-select,
    html body .gpl-journey-detail-v2 select.gpl-season-select {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
    }

    html body .gpl-journey-detail-v2 .gpl-episode-item-v2,
    html body .gpl-journey-detail-v2 .gpl-episode-item-v2 > a {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
        overflow: hidden !important;
    }

    html body .gpl-journey-detail-v2 .gpl-episode-item-v2 > a {
        display: grid !important;
        grid-template-columns: 96px minmax(0, 1fr) !important;
        column-gap: 14px !important;
        align-items: center !important;
        padding: 18px 0 !important;
    }

    html body .gpl-journey-detail-v2 .gpl-episode-number,
    html body .gpl-journey-detail-v2 .gpl-episode-duration,
    html body .gpl-journey-detail-v2 .gpl-episode-cta {
        display: none !important;
        width: 0 !important;
        min-width: 0 !important;
        max-width: 0 !important;
    }

    html body .gpl-journey-detail-v2 .gpl-episode-thumb {
        grid-column: 1 !important;
        width: 96px !important;
        min-width: 96px !important;
        max-width: 96px !important;
        height: 54px !important;
        aspect-ratio: 16 / 9 !important;
        margin: 0 !important;
    }

    html body .gpl-journey-detail-v2 .gpl-episode-info {
        grid-column: 2 !important;
        width: auto !important;
        min-width: 0 !important;
        max-width: 100% !important;
        overflow: hidden !important;
    }

    html body .gpl-journey-detail-v2 .gpl-episode-info h4,
    html body .gpl-journey-detail-v2 .gpl-episode-info p {
        max-width: 100% !important;
        overflow-wrap: anywhere !important;
        word-break: normal !important;
    }
}

@media (max-width: 900px) and (orientation: landscape) and (max-height: 600px) {
    html body .gpl-journey-detail-v2 {
        display: block !important;
        min-height: auto !important;
        padding: inherit !important;
        text-align: inherit !important;
    }

    html body .gpl-journey-detail-v2 > * {
        display: revert !important;
    }

    html body .gpl-journey-detail-v2::before {
        content: none !important;
        display: none !important;
    }
}


/* GoPeter StreamLearn v1.6.4 - strict mobile parent overflow fix */
@media (max-width: 900px) {
    html,
    body,
    body .site,
    body .site-content,
    body .content-area,
    body .entry-content,
    body .elementor,
    body .elementor-section,
    body .elementor-container,
    body .elementor-widget-container,
    body .gpl-journey-detail-v2,
    body .gpl-journey-detail-v2 *,
    body .gpl-journey-detail-v2 *::before,
    body .gpl-journey-detail-v2 *::after {
        box-sizing: border-box !important;
    }

    html,
    body {
        width: 100% !important;
        max-width: 100% !important;
        overflow-x: hidden !important;
    }

    body .gpl-journey-detail-v2 {
        width: 100% !important;
        max-width: 100% !important;
        overflow-x: clip !important;
        padding-left: 14px !important;
        padding-right: 14px !important;
    }

    body .gpl-journey-detail-v2 .gpl-detail-inner,
    body .gpl-journey-detail-v2 .gpl-journey-body,
    body .gpl-journey-detail-v2 .gpl-journey-info,
    body .gpl-journey-detail-v2 .gpl-journey-info-inner,
    body .gpl-journey-detail-v2 .gpl-season-section-v2,
    body .gpl-journey-detail-v2 .gpl-season-shell,
    body .gpl-journey-detail-v2 .gpl-season-panel,
    body .gpl-journey-detail-v2 .gpl-episode-list-v2 {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        overflow-x: hidden !important;
    }

    body .gpl-journey-detail-v2 .gpl-season-select,
    body .gpl-journey-detail-v2 select.gpl-season-select {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
    }

    body .gpl-journey-detail-v2 .gpl-episode-item-v2,
    body .gpl-journey-detail-v2 .gpl-episode-item-v2 > a {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        overflow: hidden !important;
    }

    body .gpl-journey-detail-v2 .gpl-episode-item-v2 > a {
        display: grid !important;
        grid-template-columns: 96px minmax(0, 1fr) !important;
        gap: 14px !important;
        align-items: center !important;
        padding: 18px 0 !important;
    }

    body .gpl-journey-detail-v2 .gpl-episode-number,
    body .gpl-journey-detail-v2 .gpl-episode-duration,
    body .gpl-journey-detail-v2 .gpl-episode-cta,
    body .gpl-journey-detail-v2 .gpl-episode-meta {
        display: none !important;
    }

    body .gpl-journey-detail-v2 .gpl-episode-thumb {
        grid-column: 1 !important;
        width: 96px !important;
        min-width: 96px !important;
        max-width: 96px !important;
        height: 54px !important;
        margin: 0 !important;
    }

    body .gpl-journey-detail-v2 .gpl-episode-info {
        grid-column: 2 !important;
        min-width: 0 !important;
        max-width: 100% !important;
        overflow: hidden !important;
    }

    body .gpl-journey-detail-v2 .gpl-episode-info h4,
    body .gpl-journey-detail-v2 .gpl-episode-info p {
        max-width: 100% !important;
        overflow-wrap: anywhere !important;
    }
}

/* GoPeter StreamLearn v1.6.5 - colour variable support */
.gpl-streamlearn {
    background: var(--gpl-bg, #050508);
    color: var(--gpl-text, #ffffff);
}

.gpl-streamlearn h1,
.gpl-streamlearn h2,
.gpl-streamlearn h3,
.gpl-streamlearn h4,
.gpl-streamlearn strong,
.gpl-journey-detail-v2 h1,
.gpl-journey-detail-v2 h2,
.gpl-journey-detail-v2 h3,
.gpl-episode-player-v2 h1,
.gpl-episode-player-v2 h2,
.gpl-episode-player-v2 h3 {
    color: var(--gpl-text, #ffffff);
}

.gpl-streamlearn p,
.gpl-streamlearn small,
.gpl-episode-description,
.gpl-journey-description,
.gpl-detail-copy,
.gpl-muted,
.gpl-meta,
.gpl-episode-meta {
    color: var(--gpl-muted, #aeb4c0);
}

.gpl-card,
.gpl-card-preview-portal,
.gpl-placeholder,
.gpl-notice,
.gpl-empty-card,
.gpl-player-shell,
.gpl-locked-box,
.gpl-access-panel,
.gpl-episode-item-v2 {
    background-color: var(--gpl-panel, #11131a);
    border-color: var(--gpl-border, rgba(255,255,255,.12));
}

.gpl-button-primary,
.gpl-streamlearn button.gpl-button-primary,
.gpl-detail-hero .gpl-button-primary,
.gpl-player-actions .gpl-button-primary,
.gpl-locked-box .gpl-button-primary {
    background: var(--gpl-accent, #e50914) !important;
    color: var(--gpl-button-text, #ffffff) !important;
}

.gpl-button-primary:hover,
.gpl-streamlearn button.gpl-button-primary:hover,
.gpl-detail-hero .gpl-button-primary:hover,
.gpl-player-actions .gpl-button-primary:hover,
.gpl-locked-box .gpl-button-primary:hover {
    background: var(--gpl-accent-dark, #b20710) !important;
}

.gpl-kicker,
.gpl-card-badge,
.gpl-inline-badge,
.gpl-access-badge,
.gpl-status-badge {
    background: var(--gpl-badge-bg, #e50914) !important;
    color: var(--gpl-badge-text, #ffffff) !important;
}

.gpl-progress span,
.gpl-episode-thumb-progress span,
.gpl-player-progress span {
    background: var(--gpl-progress, #e50914) !important;
}

.gpl-hero::before,
.gpl-detail-hero::before {
    background: var(--gpl-hero-overlay, rgba(0,0,0,.45));
}

.gpl-intro-modal,
.gpl-mobile-action-sheet,
.gpl-player-context-menu,
.gpl-card-preview-portal {
    background: var(--gpl-modal-bg, #232323) !important;
    color: var(--gpl-modal-text, #ffffff) !important;
}

.gpl-intro-modal *,
.gpl-mobile-action-sheet *,
.gpl-player-context-menu *,
.gpl-card-preview-portal * {
    color: inherit;
}

.gpl-season-select,
.gpl-streamlearn select,
.gpl-streamlearn input,
.gpl-streamlearn textarea {
    background-color: var(--gpl-input-bg, #232323) !important;
    color: var(--gpl-input-text, #ffffff) !important;
    border-color: var(--gpl-border, rgba(255,255,255,.12)) !important;
}

/* GoPeter StreamLearn v1.6.6 - access shop module */
.gpl-access-shop-page {
    width: 100%;
    max-width: 1180px;
    margin: 0 auto;
    padding: 48px 22px;
    box-sizing: border-box;
}

.gpl-access-shop-module {
    width: 100%;
}

.gpl-access-shop-subheading {
    max-width: 720px;
    color: var(--gpl-muted);
}

.gpl-access-options-compact .gpl-access-grid,
.gpl-access-shop-module .gpl-access-grid {
    align-items: stretch;
}

/* GoPeter StreamLearn v1.6.7 - frontend colour variable enforcement
   This block intentionally sits at the end of the stylesheet so the Frontend Colours settings win over older hard-coded dark theme rules. */
.gpl-streamlearn {
    background: var(--gpl-bg) !important;
    color: var(--gpl-text) !important;
}

.gpl-streamlearn h1,
.gpl-streamlearn h2,
.gpl-streamlearn h3,
.gpl-streamlearn h4,
.gpl-streamlearn h5,
.gpl-streamlearn h6,
.gpl-streamlearn strong,
.gpl-card-preview-portal h1,
.gpl-card-preview-portal h2,
.gpl-card-preview-portal h3,
.gpl-card-preview-portal h4,
.gpl-card-preview-portal strong {
    color: var(--gpl-text) !important;
}

.gpl-streamlearn p,
.gpl-streamlearn .gpl-card-meta,
.gpl-streamlearn .gpl-row-see-all,
.gpl-streamlearn .gpl-episode-meta,
.gpl-streamlearn .gpl-access-title,
.gpl-card-preview-portal p,
.gpl-card-preview-portal .gpl-card-meta,
.gpl-card-preview-portal .gpl-preview-content p {
    color: var(--gpl-muted) !important;
}

.gpl-streamlearn .gpl-placeholder,
.gpl-streamlearn .gpl-notice,
.gpl-streamlearn .gpl-empty-card,
.gpl-streamlearn .gpl-card,
.gpl-streamlearn .gpl-card > a,
.gpl-streamlearn .gpl-card-body,
.gpl-streamlearn .gpl-hover-card,
.gpl-streamlearn .gpl-season,
.gpl-streamlearn .gpl-access-panel,
.gpl-streamlearn .gpl-access-card,
.gpl-streamlearn .gpl-episode-item,
.gpl-streamlearn .gpl-episode-item-v2,
.gpl-streamlearn .gpl-journey-about,
.gpl-streamlearn .gpl-journey-stats,
.gpl-streamlearn .gpl-season-shell,
.gpl-card-preview-portal,
.gpl-card-preview-portal .gpl-card-body,
.gpl-card-preview-portal .gpl-preview-content,
.gpl-card-preview-portal .gpl-preview-controls {
    background: var(--gpl-panel) !important;
    border-color: var(--gpl-border) !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-episode-card,
.gpl-streamlearn.gpl-library-v2 .gpl-episode-card > a,
.gpl-streamlearn.gpl-library-v2 .gpl-episode-card-link {
    background: transparent !important;
}

.gpl-streamlearn .gpl-card-image,
.gpl-streamlearn .gpl-hover-thumb,
.gpl-streamlearn .gpl-episode-thumb,
.gpl-card-preview-portal .gpl-card-image,
.gpl-card-preview-portal .gpl-preview-thumb {
    background-color: var(--gpl-panel) !important;
}

.gpl-streamlearn .gpl-kicker,
.gpl-streamlearn .gpl-card-badge,
.gpl-streamlearn .gpl-inline-badge,
.gpl-streamlearn .gpl-episode-item-v2.is-locked .gpl-episode-cta,
.gpl-streamlearn .gpl-episode-item-v2.is-locked .gpl-episode-thumb span,
.gpl-card-preview-portal .gpl-preview-meta-pill {
    background: var(--gpl-badge-bg) !important;
    color: var(--gpl-badge-text) !important;
}

.gpl-streamlearn .gpl-progress span,
.gpl-card-preview-portal .gpl-progress span,
.gpl-card-preview-portal .gpl-preview-thumb .gpl-progress span {
    background: var(--gpl-progress) !important;
}

.gpl-streamlearn .gpl-button-primary,
.gpl-streamlearn button.gpl-button-primary,
.gpl-streamlearn .gpl-season-tab.is-active,
.gpl-streamlearn .gpl-season-tab:hover,
.gpl-card-preview-portal .gpl-preview-primary {
    background: var(--gpl-accent) !important;
    border-color: var(--gpl-accent) !important;
    color: var(--gpl-button-text) !important;
}

.gpl-streamlearn .gpl-button-primary:hover,
.gpl-streamlearn button.gpl-button-primary:hover,
.gpl-card-preview-portal .gpl-preview-primary:hover {
    background: var(--gpl-accent-dark) !important;
    border-color: var(--gpl-accent-dark) !important;
    color: var(--gpl-button-text) !important;
}

.gpl-streamlearn .gpl-button-secondary,
.gpl-streamlearn button.gpl-button-secondary,
.gpl-card-preview-portal .gpl-preview-btn,
.gpl-streamlearn .gpl-season-tab,
.gpl-streamlearn .gpl-episode-cta {
    background: color-mix(in srgb, var(--gpl-panel) 88%, var(--gpl-text) 12%) !important;
    border-color: var(--gpl-border) !important;
    color: var(--gpl-text) !important;
}

.gpl-streamlearn .gpl-button-secondary:hover,
.gpl-streamlearn button.gpl-button-secondary:hover,
.gpl-card-preview-portal .gpl-preview-btn:hover,
.gpl-streamlearn .gpl-episode-item-v2:hover .gpl-episode-cta {
    background: color-mix(in srgb, var(--gpl-panel) 76%, var(--gpl-text) 24%) !important;
    color: var(--gpl-text) !important;
}

.gpl-streamlearn select,
.gpl-streamlearn input,
.gpl-streamlearn textarea,
.gpl-journey-detail-v2 .gpl-season-select {
    background: var(--gpl-input-bg) !important;
    color: var(--gpl-input-text) !important;
    border-color: var(--gpl-border) !important;
}

.gpl-streamlearn .gpl-hero {
    background-color: var(--gpl-panel) !important;
}

.gpl-streamlearn .gpl-hero::before {
    background: var(--gpl-hero-overlay) !important;
}

.gpl-streamlearn .gpl-hero h1,
.gpl-streamlearn .gpl-hero p {
    color: var(--gpl-button-text) !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-arrow {
    color: var(--gpl-button-text) !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-prev {
    background: linear-gradient(90deg, color-mix(in srgb, var(--gpl-accent) 85%, #000000 15%) 0%, rgba(0,0,0,0) 100%) !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-next {
    background: linear-gradient(270deg, color-mix(in srgb, var(--gpl-accent) 85%, #000000 15%) 0%, rgba(0,0,0,0) 100%) !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-prev:hover {
    background: linear-gradient(90deg, var(--gpl-accent) 0%, rgba(0,0,0,0) 100%) !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-next:hover {
    background: linear-gradient(270deg, var(--gpl-accent) 0%, rgba(0,0,0,0) 100%) !important;
}

.gpl-streamlearn .gpl-card-action,
.gpl-streamlearn .gpl-episode-thumb span,
.gpl-card-preview-portal .gpl-preview-play {
    background: color-mix(in srgb, var(--gpl-text) 78%, transparent) !important;
    border-color: var(--gpl-border) !important;
    color: var(--gpl-panel) !important;
}

.gpl-card-preview-portal,
.gpl-card-preview-portal .gpl-card-body,
.gpl-card-preview-portal .gpl-preview-content,
.gpl-card-preview-portal .gpl-preview-controls {
    background: var(--gpl-modal-bg) !important;
    color: var(--gpl-modal-text) !important;
}

.gpl-card-preview-portal h1,
.gpl-card-preview-portal h2,
.gpl-card-preview-portal h3,
.gpl-card-preview-portal h4,
.gpl-card-preview-portal strong,
.gpl-card-preview-portal a {
    color: var(--gpl-modal-text) !important;
}

.gpl-card-preview-portal p,
.gpl-card-preview-portal .gpl-card-meta,
.gpl-card-preview-portal .gpl-preview-content p {
    color: var(--gpl-muted) !important;
}

.gpl-streamlearn .gpl-journey-info,
.gpl-streamlearn .gpl-season-section-v2 {
    background: var(--gpl-bg) !important;
}

.gpl-streamlearn .gpl-episode-item-v2:hover {
    background: color-mix(in srgb, var(--gpl-panel) 82%, var(--gpl-text) 18%) !important;
}

.gpl-streamlearn .gpl-ranked-thumb,
.gpl-streamlearn.gpl-library-v2 .gpl-card:hover,
.gpl-card-preview-portal.gpl-episode-preview-portal {
    box-shadow: 0 18px 50px rgba(15, 23, 42, .18) !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-card-badge {
    box-shadow: 0 8px 20px rgba(15, 23, 42, .18) !important;
}

/* GoPeter StreamLearn v1.6.8 - light theme row and preview polish */
.gpl-streamlearn.gpl-library-v2 {
    background: var(--gpl-bg) !important;
    color: var(--gpl-text) !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row h2,
.gpl-streamlearn.gpl-library-v2 .gpl-row-see-all {
    color: var(--gpl-text) !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-see-all {
    opacity: .65 !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-card,
.gpl-streamlearn.gpl-library-v2 .gpl-card > a,
.gpl-streamlearn.gpl-library-v2 .gpl-episode-card > a,
.gpl-streamlearn.gpl-library-v2 .gpl-episode-card-link {
    background: transparent !important;
    border-color: transparent !important;
    box-shadow: none !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-card .gpl-hover-card {
    display: none !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-card-image,
.gpl-streamlearn.gpl-library-v2 .gpl-episode-card .gpl-card-image,
.gpl-streamlearn.gpl-library-v2 .gpl-ranked-thumb {
    border-radius: 10px !important;
    border: 1px solid var(--gpl-border) !important;
    overflow: hidden !important;
    background-color: var(--gpl-panel) !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-card-image::after,
.gpl-streamlearn.gpl-library-v2 .gpl-ranked-thumb::after {
    background: linear-gradient(180deg, rgba(0,0,0,0) 45%, var(--gpl-hero-overlay) 100%) !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-card-badge,
.gpl-streamlearn.gpl-library-v2 .gpl-inline-badge,
.gpl-card-preview-portal .gpl-preview-meta-pill {
    background: var(--gpl-badge-bg) !important;
    color: var(--gpl-badge-text) !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-progress span,
.gpl-card-preview-portal .gpl-progress span,
.gpl-card-preview-portal .gpl-preview-thumb .gpl-progress span {
    background: var(--gpl-progress) !important;
}

.gpl-card-preview-portal {
    position: fixed !important;
    z-index: 999999 !important;
    background: var(--gpl-modal-bg) !important;
    color: var(--gpl-modal-text) !important;
    border: 1px solid var(--gpl-border) !important;
    box-shadow: 0 26px 80px rgba(15, 23, 42, .20) !important;
}

.gpl-card-preview-portal a,
.gpl-card-preview-portal h1,
.gpl-card-preview-portal h2,
.gpl-card-preview-portal h3,
.gpl-card-preview-portal h4,
.gpl-card-preview-portal strong,
.gpl-card-preview-portal .gpl-card-body h3,
.gpl-card-preview-portal .gpl-preview-content h3 {
    color: var(--gpl-modal-text) !important;
}

.gpl-card-preview-portal .gpl-card-body,
.gpl-card-preview-portal .gpl-preview-content,
.gpl-card-preview-portal .gpl-preview-controls {
    background: var(--gpl-modal-bg) !important;
    color: var(--gpl-modal-text) !important;
}

.gpl-card-preview-portal p,
.gpl-card-preview-portal .gpl-card-meta,
.gpl-card-preview-portal .gpl-preview-content p {
    color: var(--gpl-muted) !important;
}

.gpl-card-preview-portal .gpl-preview-btn,
.gpl-card-preview-portal .gpl-button-secondary {
    background: color-mix(in srgb, var(--gpl-modal-text) 8%, transparent) !important;
    border-color: var(--gpl-border) !important;
    color: var(--gpl-modal-text) !important;
}

.gpl-card-preview-portal .gpl-preview-primary,
.gpl-card-preview-portal a.gpl-preview-primary,
.gpl-card-preview-portal .gpl-preview-btn.gpl-preview-primary,
.gpl-streamlearn.gpl-library-v2 .gpl-button-primary {
    background: var(--gpl-accent) !important;
    border-color: var(--gpl-accent) !important;
    color: var(--gpl-button-text) !important;
}

.gpl-card-preview-portal .gpl-preview-primary:hover,
.gpl-card-preview-portal a.gpl-preview-primary:hover,
.gpl-card-preview-portal .gpl-preview-btn.gpl-preview-primary:hover,
.gpl-streamlearn.gpl-library-v2 .gpl-button-primary:hover {
    background: var(--gpl-accent-dark) !important;
    border-color: var(--gpl-accent-dark) !important;
    color: var(--gpl-button-text) !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-arrow {
    color: var(--gpl-button-text) !important;
    text-shadow: 0 2px 12px rgba(15, 23, 42, .35) !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-prev {
    background: linear-gradient(90deg, color-mix(in srgb, var(--gpl-accent) 82%, #000000 18%) 0%, rgba(0,0,0,0) 100%) !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-next {
    background: linear-gradient(270deg, color-mix(in srgb, var(--gpl-accent) 82%, #000000 18%) 0%, rgba(0,0,0,0) 100%) !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-prev:hover {
    background: linear-gradient(90deg, var(--gpl-accent-dark) 0%, rgba(0,0,0,0) 100%) !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-next:hover {
    background: linear-gradient(270deg, var(--gpl-accent-dark) 0%, rgba(0,0,0,0) 100%) !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-card-action {
    background: rgba(15, 23, 42, .72) !important;
    border-color: rgba(255,255,255,.25) !important;
    color: #ffffff !important;
}


/* GoPeter StreamLearn v1.6.9 - anchored preview and light theme finish */
.gpl-streamlearn.gpl-library-v2 .gpl-card.is-preview-source {
    opacity: 1 !important;
}

.gpl-card-preview-portal,
.gpl-card-preview-portal.gpl-episode-preview-portal {
    width: 360px !important;
    max-width: calc(100vw - 24px) !important;
    background: var(--gpl-modal-bg) !important;
    color: var(--gpl-modal-text) !important;
    border: 1px solid var(--gpl-border) !important;
    border-radius: 14px !important;
    overflow: hidden !important;
    box-shadow: 0 20px 55px rgba(15, 23, 42, .18) !important;
    backdrop-filter: none !important;
}

.gpl-card-preview-portal .gpl-preview-thumb,
.gpl-card-preview-portal .gpl-card-image {
    opacity: 1 !important;
    filter: none !important;
    background-color: var(--gpl-panel) !important;
}

.gpl-card-preview-portal .gpl-preview-thumb::after {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    pointer-events: none !important;
    background: linear-gradient(180deg, rgba(255,255,255,.08) 0%, rgba(255,255,255,0) 55%, rgba(15,23,42,.08) 100%) !important;
}

.gpl-card-preview-portal .gpl-preview-content {
    padding: 12px 14px 14px !important;
    background: var(--gpl-modal-bg) !important;
}

.gpl-card-preview-portal .gpl-preview-controls {
    padding: 0 0 10px !important;
    background: transparent !important;
}

.gpl-card-preview-portal .gpl-preview-btn {
    background: #eef1f5 !important;
    border-color: #e2e7ee !important;
    color: var(--gpl-modal-text) !important;
}

.gpl-card-preview-portal .gpl-preview-btn:hover {
    background: #e3e8ef !important;
    border-color: #d7dee8 !important;
    color: var(--gpl-modal-text) !important;
}

.gpl-card-preview-portal .gpl-preview-primary,
.gpl-card-preview-portal .gpl-preview-btn.gpl-preview-primary {
    background: var(--gpl-accent) !important;
    border-color: var(--gpl-accent) !important;
    color: var(--gpl-button-text) !important;
}

.gpl-card-preview-portal .gpl-preview-meta-pill,
.gpl-streamlearn.gpl-library-v2 .gpl-card-badge,
.gpl-streamlearn.gpl-library-v2 .gpl-inline-badge {
    background: var(--gpl-badge-bg) !important;
    color: var(--gpl-badge-text) !important;
}

.gpl-card-preview-portal .gpl-preview-content h3 {
    color: var(--gpl-modal-text) !important;
    margin: 0 0 8px !important;
}

.gpl-card-preview-portal .gpl-preview-excerpt,
.gpl-card-preview-portal .gpl-preview-content p {
    color: var(--gpl-muted) !important;
}

.gpl-card-preview-portal .gpl-preview-image-play {
    position: absolute !important;
    inset: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    z-index: 2 !important;
}

.gpl-card-preview-portal .gpl-preview-image-play span {
    display: block !important;
    width: 0 !important;
    height: 0 !important;
    border-top: 18px solid transparent !important;
    border-bottom: 18px solid transparent !important;
    border-left: 26px solid rgba(255,255,255,.92) !important;
    filter: drop-shadow(0 6px 16px rgba(15,23,42,.22)) !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-progress span,
.gpl-card-preview-portal .gpl-progress span,
.gpl-card-preview-portal .gpl-preview-thumb .gpl-progress span {
    background: var(--gpl-progress) !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-progress {
    background: transparent !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-prev {
    background: linear-gradient(90deg, rgba(15,23,42,.42) 0%, rgba(15,23,42,0) 100%) !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-next {
    background: linear-gradient(270deg, rgba(15,23,42,.42) 0%, rgba(15,23,42,0) 100%) !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-prev:hover {
    background: linear-gradient(90deg, rgba(15,23,42,.60) 0%, rgba(15,23,42,0) 100%) !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-next:hover {
    background: linear-gradient(270deg, rgba(15,23,42,.60) 0%, rgba(15,23,42,0) 100%) !important;
}


/* GoPeter StreamLearn v1.6.10 - anchored preview/button/arrow polish */
.gpl-card-preview-portal,
.gpl-card-preview-portal.gpl-episode-preview-portal {
    width: 360px !important;
    max-width: calc(100vw - 28px) !important;
    box-shadow: 0 14px 38px rgba(15, 23, 42, .14) !important;
    border-color: var(--gpl-border) !important;
}

.gpl-card-preview-portal .gpl-preview-content {
    background: var(--gpl-modal-bg) !important;
    color: var(--gpl-modal-text) !important;
}

.gpl-card-preview-portal .gpl-preview-btn,
.gpl-card-preview-portal button.gpl-preview-btn,
.gpl-card-preview-portal a.gpl-preview-btn,
.gpl-card-preview-portal .gpl-watch-later-toggle,
.gpl-card-preview-portal .gpl-favourite-toggle,
.gpl-card-preview-portal .gpl-mark-watched,
.gpl-card-preview-portal .gpl-hide-continue {
    background: #eef1f5 !important;
    border: 1px solid #d9e0ea !important;
    color: var(--gpl-modal-text) !important;
    text-shadow: none !important;
}

.gpl-card-preview-portal .gpl-preview-btn:hover,
.gpl-card-preview-portal button.gpl-preview-btn:hover,
.gpl-card-preview-portal a.gpl-preview-btn:hover,
.gpl-card-preview-portal .gpl-watch-later-toggle:hover,
.gpl-card-preview-portal .gpl-favourite-toggle:hover,
.gpl-card-preview-portal .gpl-mark-watched:hover,
.gpl-card-preview-portal .gpl-hide-continue:hover {
    background: #e3e8ef !important;
    border-color: #cfd8e3 !important;
    color: var(--gpl-modal-text) !important;
}

.gpl-card-preview-portal .gpl-watch-later-toggle.is-saved,
.gpl-card-preview-portal .gpl-watch-later-toggle.is-saved:hover,
.gpl-card-preview-portal .gpl-favourite-toggle.is-favourited,
.gpl-card-preview-portal .gpl-favourite-toggle.is-favourited:hover,
.gpl-card-preview-portal .gpl-preview-btn.is-saved,
.gpl-card-preview-portal .gpl-preview-btn.is-favourited {
    background: #eef1f5 !important;
    border-color: #d9e0ea !important;
    color: var(--gpl-modal-text) !important;
}

.gpl-card-preview-portal .gpl-preview-primary,
.gpl-card-preview-portal a.gpl-preview-primary,
.gpl-card-preview-portal .gpl-preview-btn.gpl-preview-primary {
    background: var(--gpl-accent) !important;
    border-color: var(--gpl-accent) !important;
    color: var(--gpl-button-text) !important;
}

.gpl-card-preview-portal .gpl-preview-primary:hover,
.gpl-card-preview-portal a.gpl-preview-primary:hover,
.gpl-card-preview-portal .gpl-preview-btn.gpl-preview-primary:hover {
    background: var(--gpl-accent-dark) !important;
    border-color: var(--gpl-accent-dark) !important;
    color: var(--gpl-button-text) !important;
}

.gpl-card-preview-portal .gpl-preview-excerpt,
.gpl-card-preview-portal .gpl-preview-content p {
    color: var(--gpl-muted) !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-arrow,
.gpl-streamlearn.gpl-library-v2 .gpl-row-prev,
.gpl-streamlearn.gpl-library-v2 .gpl-row-next,
.gpl-streamlearn.gpl-library-v2 .gpl-row-arrow:hover,
.gpl-streamlearn.gpl-library-v2 .gpl-row-prev:hover,
.gpl-streamlearn.gpl-library-v2 .gpl-row-next:hover {
    width: 46px !important;
    height: 64px !important;
    min-height: 64px !important;
    max-height: 64px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    border-radius: 999px !important;
    background: rgba(15, 23, 42, .18) !important;
    color: #ffffff !important;
    box-shadow: none !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-arrow:hover,
.gpl-streamlearn.gpl-library-v2 .gpl-row-prev:hover,
.gpl-streamlearn.gpl-library-v2 .gpl-row-next:hover {
    background: rgba(15, 23, 42, .30) !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-prev {
    left: 12px !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-next {
    right: 12px !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-card-row {
    padding-bottom: 20px !important;
}

@media (max-width: 767px) {
    .gpl-streamlearn.gpl-library-v2 .gpl-row-arrow {
        display: none !important;
    }
}

/* GoPeter StreamLearn v1.6.11 - light card border, play colour, content-frame preview polish */
.gpl-streamlearn.gpl-library-v2 .gpl-card,
.gpl-streamlearn.gpl-library-v2 .gpl-episode-card,
.gpl-streamlearn.gpl-library-v2 .gpl-journey-card {
    border: 1px solid var(--gpl-border) !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    background: var(--gpl-panel) !important;
    background-clip: padding-box !important;
    box-shadow: none !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-card:hover,
.gpl-streamlearn.gpl-library-v2 .gpl-card.is-preview-source {
    border-color: var(--gpl-border) !important;
    box-shadow: 0 8px 22px rgba(15, 23, 42, .08) !important;
    opacity: 1 !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-card > a,
.gpl-streamlearn.gpl-library-v2 .gpl-episode-card > a,
.gpl-streamlearn.gpl-library-v2 .gpl-episode-card-link,
.gpl-streamlearn.gpl-library-v2 .gpl-card .gpl-card-image {
    border: 0 !important;
    border-radius: inherit !important;
    overflow: hidden !important;
    background-clip: padding-box !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-card .gpl-card-image::after {
    border-radius: inherit !important;
}

.gpl-card-preview-portal,
.gpl-card-preview-portal.gpl-episode-preview-portal {
    border: 1px solid var(--gpl-border) !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    background: var(--gpl-modal-bg) !important;
    background-clip: padding-box !important;
    box-shadow: 0 10px 28px rgba(15, 23, 42, .12) !important;
}

.gpl-card-preview-portal .gpl-preview-thumb,
.gpl-card-preview-portal .gpl-card-image {
    border-radius: 0 !important;
    overflow: hidden !important;
}

.gpl-card-preview-portal .gpl-preview-image-play span {
    border-left-color: var(--gpl-play-button) !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-card-play,
.gpl-streamlearn.gpl-library-v2 .gpl-hover-play,
.gpl-streamlearn.gpl-library-v2 .gpl-play-icon {
    color: var(--gpl-play-button) !important;
    border-color: color-mix(in srgb, var(--gpl-play-button) 45%, transparent) !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-arrow,
.gpl-streamlearn.gpl-library-v2 .gpl-row-prev,
.gpl-streamlearn.gpl-library-v2 .gpl-row-next,
.gpl-streamlearn.gpl-library-v2 .gpl-row-arrow:hover,
.gpl-streamlearn.gpl-library-v2 .gpl-row-prev:hover,
.gpl-streamlearn.gpl-library-v2 .gpl-row-next:hover {
    width: 44px !important;
    height: 44px !important;
    min-height: 44px !important;
    max-height: 44px !important;
    border-radius: 999px !important;
    border: 1px solid rgba(255,255,255,.55) !important;
    background: rgba(15, 23, 42, .26) !important;
    color: #ffffff !important;
    box-shadow: 0 8px 22px rgba(15, 23, 42, .12) !important;
    backdrop-filter: blur(6px) !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-arrow:hover,
.gpl-streamlearn.gpl-library-v2 .gpl-row-prev:hover,
.gpl-streamlearn.gpl-library-v2 .gpl-row-next:hover {
    background: rgba(15, 23, 42, .38) !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-prev {
    left: 10px !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-next {
    right: 10px !important;
}


/* GoPeter StreamLearn v1.6.12 - rounded play icon and preview anchoring polish */
.gpl-streamlearn.gpl-library-v2 .gpl-card,
.gpl-streamlearn.gpl-library-v2 .gpl-episode-card,
.gpl-streamlearn.gpl-library-v2 .gpl-journey-card {
    border-radius: 12px !important;
    overflow: hidden !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-card .gpl-card-image,
.gpl-streamlearn.gpl-library-v2 .gpl-card > a,
.gpl-streamlearn.gpl-library-v2 .gpl-episode-card-link {
    border-radius: 11px !important;
    overflow: hidden !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-card .gpl-card-image::after {
    border-radius: 11px !important;
}

.gpl-card-preview-portal,
.gpl-card-preview-portal.gpl-episode-preview-portal {
    box-shadow: 0 8px 24px rgba(15, 23, 42, .10) !important;
}

.gpl-card-preview-portal .gpl-preview-image-play span {
    width: 34px !important;
    height: 38px !important;
    border: 0 !important;
    background: var(--gpl-play-button) !important;
    clip-path: path('M 4 3 Q 4 0 7 2 L 31 17 Q 34 19 31 21 L 7 36 Q 4 38 4 35 Z') !important;
    filter: drop-shadow(0 5px 12px rgba(15,23,42,.20)) !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-hover-play,
.gpl-streamlearn.gpl-library-v2 .gpl-card-play,
.gpl-streamlearn.gpl-library-v2 .gpl-play-icon {
    border-radius: 8px !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-card:hover,
.gpl-streamlearn.gpl-library-v2 .gpl-card.is-preview-source {
    box-shadow: 0 6px 18px rgba(15, 23, 42, .07) !important;
}

/* GoPeter StreamLearn v1.6.14 - row-aware preview placement and arrow protection */
.gpl-card-preview-portal,
.gpl-card-preview-portal.gpl-episode-preview-portal {
    z-index: 999900 !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-row-arrow,
.gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-row-prev,
.gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-row-next,
html body .gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-row-arrow,
html body .gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-row-prev,
html body .gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-row-next {
    z-index: 1000001 !important;
    width: 44px !important;
    height: 44px !important;
    min-height: 44px !important;
    max-height: 44px !important;
    border-radius: 999px !important;
    border: 1px solid rgba(255,255,255,.60) !important;
    background: rgba(15, 23, 42, .28) !important;
    color: #ffffff !important;
    box-shadow: 0 8px 22px rgba(15, 23, 42, .12) !important;
    backdrop-filter: blur(6px) !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-row-arrow:hover,
.gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-row-prev:hover,
.gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-row-next:hover,
html body .gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-row-arrow:hover,
html body .gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-row-prev:hover,
html body .gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-row-next:hover {
    background: rgba(15, 23, 42, .42) !important;
    color: #ffffff !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-row-prev,
html body .gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-row-prev {
    left: 10px !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-row-next,
html body .gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-row-next {
    right: 10px !important;
}

.gpl-card-preview-portal .gpl-preview-image-play span {
    border-radius: 8px !important;
}


/* GoPeter StreamLearn v1.6.15 - adaptive transparent carousel arrows
   CSS-only: keeps restored preview positioning untouched. */
@media (min-width: 901px) {
    html body .gpl-streamlearn.gpl-library-v2 .gpl-row.gpl-row-has-arrows .gpl-row-arrow,
    html body .gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-row-arrow,
    html body .gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-row-prev,
    html body .gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-row-next {
        position: absolute !important;
        top: 50% !important;
        bottom: auto !important;
        transform: translateY(-50%) !important;
        width: 62px !important;
        min-width: 62px !important;
        height: 122px !important;
        min-height: 122px !important;
        max-height: 122px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        border: 0 !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        backdrop-filter: none !important;
        color: #ffffff !important;
        font-size: 56px !important;
        line-height: 1 !important;
        font-weight: 700 !important;
        text-shadow: 0 2px 14px rgba(15, 23, 42, .55) !important;
        z-index: 1000001 !important;
        pointer-events: auto !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 .gpl-row.gpl-row-has-arrows .gpl-row-prev,
    html body .gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-row-prev {
        left: -6px !important;
        right: auto !important;
        background: linear-gradient(
            to right,
            var(--gpl-bg, #f6f7f9) 0%,
            var(--gpl-bg, #f6f7f9) 22%,
            var(--gpl-bg-transparent, rgba(246,247,249,0)) 100%
        ) !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 .gpl-row.gpl-row-has-arrows .gpl-row-next,
    html body .gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-row-next {
        right: -6px !important;
        left: auto !important;
        background: linear-gradient(
            to left,
            var(--gpl-bg, #f6f7f9) 0%,
            var(--gpl-bg, #f6f7f9) 22%,
            var(--gpl-bg-transparent, rgba(246,247,249,0)) 100%
        ) !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 .gpl-row.gpl-row-has-arrows .gpl-row-arrow:hover,
    html body .gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-row-arrow:hover {
        color: #ffffff !important;
        opacity: 1 !important;
        box-shadow: none !important;
    }
}

@media (max-width: 900px) {
    html body .gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-row-arrow {
        top: 50% !important;
        bottom: auto !important;
        transform: translateY(-50%) !important;
    }
}

/* GoPeter StreamLearn v1.6.16 - arrows outside row, adaptive fade only */
@media (min-width: 901px) {
    html body .gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-row-strip {
        overflow: visible !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 .gpl-row.gpl-row-has-arrows .gpl-row-arrow,
    html body .gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-row-arrow,
    html body .gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-row-prev,
    html body .gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-row-next {
        position: absolute !important;
        top: 50% !important;
        bottom: auto !important;
        transform: translateY(-50%) !important;
        width: 58px !important;
        min-width: 58px !important;
        height: 122px !important;
        min-height: 122px !important;
        max-height: 122px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        border: 0 !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        backdrop-filter: none !important;
        color: #ffffff !important;
        font-size: 54px !important;
        line-height: 1 !important;
        font-weight: 700 !important;
        text-shadow: 0 2px 14px rgba(15, 23, 42, .55) !important;
        z-index: 1000001 !important;
        pointer-events: auto !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 .gpl-row.gpl-row-has-arrows .gpl-row-prev,
    html body .gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-row-prev {
        left: -64px !important;
        right: auto !important;
        background: linear-gradient(
            to right,
            var(--gpl-bg, #f6f7f9) 0%,
            color-mix(in srgb, var(--gpl-bg, #f6f7f9) 68%, transparent) 48%,
            var(--gpl-bg-transparent, rgba(246,247,249,0)) 100%
        ) !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 .gpl-row.gpl-row-has-arrows .gpl-row-next,
    html body .gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-row-next {
        right: -64px !important;
        left: auto !important;
        background: linear-gradient(
            to left,
            var(--gpl-bg, #f6f7f9) 0%,
            color-mix(in srgb, var(--gpl-bg, #f6f7f9) 68%, transparent) 48%,
            var(--gpl-bg-transparent, rgba(246,247,249,0)) 100%
        ) !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 .gpl-row.gpl-row-has-arrows .gpl-row-arrow:hover,
    html body .gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-row-arrow:hover {
        color: #ffffff !important;
        opacity: 1 !important;
        box-shadow: none !important;
    }
}

@media (max-width: 900px) {
    html body .gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-row-prev {
        left: -18px !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-row-next {
        right: -18px !important;
    }
}


/* GoPeter StreamLearn v1.6.18 - tighter fixed row spacing
   CSS only. Popup positioning logic remains untouched. */
.gpl-streamlearn.gpl-library-v2 {
    padding-top: 40px !important;
    padding-bottom: 60px !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-section,
.gpl-streamlearn.gpl-library-v2 .gpl-row,
.gpl-streamlearn.gpl-library-v2 .gpl-library-section {
    margin-bottom: 32px !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-section:last-child,
.gpl-streamlearn.gpl-library-v2 .gpl-row:last-child,
.gpl-streamlearn.gpl-library-v2 .gpl-library-section:last-child {
    margin-bottom: 0 !important;
}

.gpl-streamlearn.gpl-library-v2 h2,
.gpl-streamlearn.gpl-library-v2 .gpl-section-title,
.gpl-streamlearn.gpl-library-v2 .gpl-row-title {
    margin-bottom: 12px !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-header {
    margin-bottom: 12px !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-header h2,
.gpl-streamlearn.gpl-library-v2 .gpl-row-header .gpl-row-title {
    margin-bottom: 0 !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-card-row {
    padding-top: 6px !important;
    padding-bottom: 12px !important;
}

@media (min-width: 901px) {
    html body .gpl-streamlearn.gpl-library-v2 .gpl-row.gpl-row-has-arrows .gpl-row-arrow,
    html body .gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-row-arrow,
    html body .gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-row-prev,
    html body .gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-row-next {
        color: var(--gpl-arrow-colour, #9EC343) !important;
        text-shadow: 0 2px 14px rgba(15, 23, 42, .30) !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 .gpl-row.gpl-row-has-arrows .gpl-row-arrow:hover,
    html body .gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-row-arrow:hover,
    html body .gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-row-prev:hover,
    html body .gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-row-next:hover {
        color: var(--gpl-arrow-hover, #8CAF38) !important;
    }
}

@media (max-width: 900px) {
    html body .gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-row-arrow,
    html body .gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-row-prev,
    html body .gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-row-next {
        color: var(--gpl-arrow-colour, #9EC343) !important;
    }

    html body .gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-row-arrow:hover,
    html body .gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-row-prev:hover,
    html body .gpl-streamlearn.gpl-library-v2 .gpl-row .gpl-row-next:hover {
        color: var(--gpl-arrow-hover, #8CAF38) !important;
    }
}


/* GoPeter StreamLearn v1.6.20 - unsaved Save button visibility fix */
.gpl-card-preview-portal .gpl-preview-btn.gpl-watch-later-toggle,
.gpl-card-preview-portal button.gpl-preview-btn.gpl-watch-later-toggle {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 0 !important;
    min-width: 64px !important;
    color: var(--gpl-modal-text) !important;
    font-size: 13px !important;
    line-height: 1 !important;
    text-indent: 0 !important;
    opacity: 1 !important;
    visibility: visible !important;
    background: #eef1f5 !important;
    border-color: #d9e0ea !important;
}

.gpl-card-preview-portal .gpl-preview-btn.gpl-watch-later-toggle:not(.is-saved)::before,
.gpl-card-preview-portal button.gpl-preview-btn.gpl-watch-later-toggle:not(.is-saved)::before {
    content: none !important;
}

.gpl-card-preview-portal .gpl-preview-btn.gpl-watch-later-toggle.is-saved,
.gpl-card-preview-portal button.gpl-preview-btn.gpl-watch-later-toggle.is-saved {
    color: var(--gpl-modal-text) !important;
}


/* GoPeter StreamLearn v1.6.21 - save/remove button hover and saved action polish */
.gpl-card-preview-portal .gpl-preview-btn.gpl-watch-later-toggle,
.gpl-card-preview-portal button.gpl-preview-btn.gpl-watch-later-toggle,
.gpl-card-preview-portal .gpl-preview-btn.gpl-watch-later-toggle:hover,
.gpl-card-preview-portal button.gpl-preview-btn.gpl-watch-later-toggle:hover,
.gpl-card-preview-portal .gpl-preview-btn.gpl-watch-later-toggle:focus,
.gpl-card-preview-portal button.gpl-preview-btn.gpl-watch-later-toggle:focus {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 64px !important;
    color: var(--gpl-modal-text) !important;
    -webkit-text-fill-color: var(--gpl-modal-text) !important;
    text-indent: 0 !important;
    opacity: 1 !important;
    visibility: visible !important;
}

.gpl-card-preview-portal .gpl-preview-btn.gpl-watch-later-toggle:hover,
.gpl-card-preview-portal button.gpl-preview-btn.gpl-watch-later-toggle:hover,
.gpl-card-preview-portal .gpl-preview-btn.gpl-watch-later-toggle:focus,
.gpl-card-preview-portal button.gpl-preview-btn.gpl-watch-later-toggle:focus {
    background: color-mix(in srgb, var(--gpl-panel) 78%, var(--gpl-text) 22%) !important;
    border-color: var(--gpl-border) !important;
}

.gpl-card-preview-portal .gpl-preview-btn.gpl-watch-later-toggle::before,
.gpl-card-preview-portal button.gpl-preview-btn.gpl-watch-later-toggle::before,
.gpl-card-preview-portal .gpl-preview-btn.gpl-watch-later-toggle:hover::before,
.gpl-card-preview-portal button.gpl-preview-btn.gpl-watch-later-toggle:hover::before {
    content: none !important;
    display: none !important;
}


/* GoPeter StreamLearn v1.6.22 - trial page heading and richer row headings
   Layout width, card size, popup positioning, and arrow positioning remain untouched. */
.gpl-streamlearn.gpl-library-v2 .gpl-library-heading {
    margin: 0 0 34px 0 !important;
    max-width: 760px !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-library-eyebrow {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    margin: 0 0 10px 0 !important;
    color: var(--gpl-accent, #9EC343) !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    letter-spacing: .12em !important;
    text-transform: uppercase !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-library-heading h1 {
    margin: 0 !important;
    color: var(--gpl-text, #0f172a) !important;
    font-size: clamp(38px, 4.4vw, 64px) !important;
    line-height: .95 !important;
    font-weight: 900 !important;
    letter-spacing: -0.055em !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-library-heading p {
    margin: 16px 0 0 0 !important;
    color: var(--gpl-muted, #667085) !important;
    font-size: 17px !important;
    line-height: 1.55 !important;
    max-width: 620px !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-header h2,
.gpl-streamlearn.gpl-library-v2 .gpl-row-header .gpl-row-title,
.gpl-streamlearn.gpl-library-v2 .gpl-section-title {
    position: relative !important;
    display: inline-block !important;
    color: var(--gpl-text, #0f172a) !important;
    font-size: 30px !important;
    line-height: 1.1 !important;
    font-weight: 850 !important;
    letter-spacing: -0.035em !important;
    padding-bottom: 12px !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-header h2::after,
.gpl-streamlearn.gpl-library-v2 .gpl-row-header .gpl-row-title::after,
.gpl-streamlearn.gpl-library-v2 .gpl-section-title::after {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    bottom: 0 !important;
    width: 46px !important;
    height: 4px !important;
    border-radius: 999px !important;
    background: var(--gpl-accent, #9EC343) !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-header {
    margin-bottom: 12px !important;
}

@media (max-width: 700px) {
    .gpl-streamlearn.gpl-library-v2 .gpl-library-heading {
        margin-bottom: 28px !important;
    }

    .gpl-streamlearn.gpl-library-v2 .gpl-library-heading h1 {
        font-size: 40px !important;
    }

    .gpl-streamlearn.gpl-library-v2 .gpl-library-heading p {
        font-size: 15px !important;
    }

    .gpl-streamlearn.gpl-library-v2 .gpl-row-header h2,
    .gpl-streamlearn.gpl-library-v2 .gpl-row-header .gpl-row-title,
    .gpl-streamlearn.gpl-library-v2 .gpl-section-title {
        font-size: 26px !important;
    }
}


/* GoPeter StreamLearn v1.6.23 - remove trial page heading and soften row headings
   Popup positioning, arrow positioning, row width, and card size remain untouched. */
.gpl-streamlearn.gpl-library-v2 .gpl-library-heading {
    display: none !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-header h2,
.gpl-streamlearn.gpl-library-v2 .gpl-row-header .gpl-row-title,
.gpl-streamlearn.gpl-library-v2 .gpl-section-title {
    font-size: 26px !important;
    line-height: 1.15 !important;
    font-weight: 750 !important;
    letter-spacing: -0.025em !important;
    padding-bottom: 8px !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-header h2::after,
.gpl-streamlearn.gpl-library-v2 .gpl-row-header .gpl-row-title::after,
.gpl-streamlearn.gpl-library-v2 .gpl-section-title::after {
    width: 38px !important;
    height: 2px !important;
}

.gpl-streamlearn.gpl-library-v2 .gpl-row-header {
    margin-bottom: 10px !important;
}

@media (max-width: 700px) {
    .gpl-streamlearn.gpl-library-v2 .gpl-row-header h2,
    .gpl-streamlearn.gpl-library-v2 .gpl-row-header .gpl-row-title,
    .gpl-streamlearn.gpl-library-v2 .gpl-section-title {
        font-size: 24px !important;
    }
}

/* GoPeter StreamLearn v1.6.24 - Journey single page light-theme polish
   Library page popup positioning, row width, card size, and carousel arrows remain untouched. */
body .gpl-journey-detail-v2 .gpl-journey-info-inner,
body .gpl-journey-detail-v2 .gpl-season-shell,
body .gpl-journey-detail-v2 .gpl-access-panel {
    max-width: 1120px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

body .gpl-journey-detail-v2 .gpl-journey-about,
body .gpl-journey-detail-v2 .gpl-journey-stats {
    background: var(--gpl-panel, #ffffff) !important;
    border: 1px solid var(--gpl-border, #D9DEE8) !important;
    border-radius: 14px !important;
    box-shadow: 0 10px 30px rgba(15, 23, 42, .05) !important;
    color: var(--gpl-text, #111827) !important;
}

body .gpl-journey-detail-v2 .gpl-journey-about h2,
body .gpl-journey-detail-v2 .gpl-season-section-header h2,
body .gpl-journey-detail-v2 .gpl-season-header h3,
body .gpl-journey-detail-v2 .gpl-episode-info h4 {
    color: var(--gpl-text, #111827) !important;
}

body .gpl-journey-detail-v2 .gpl-journey-about p,
body .gpl-journey-detail-v2 .gpl-season-header p,
body .gpl-journey-detail-v2 .gpl-episode-info p,
body .gpl-journey-detail-v2 .gpl-episode-meta,
body .gpl-journey-detail-v2 .gpl-episode-number,
body .gpl-journey-detail-v2 .gpl-episode-duration,
body .gpl-journey-detail-v2 .gpl-journey-stat span {
    color: var(--gpl-muted, #667085) !important;
}

body .gpl-journey-detail-v2 .gpl-journey-stat strong {
    color: var(--gpl-text, #111827) !important;
}

body .gpl-journey-detail-v2 .gpl-season-section-v2 {
    margin-top: 34px !important;
}

body .gpl-journey-detail-v2 .gpl-season-shell {
    background: var(--gpl-panel, #ffffff) !important;
    border: 1px solid var(--gpl-border, #D9DEE8) !important;
    border-radius: 16px !important;
    box-shadow: 0 12px 34px rgba(15, 23, 42, .045) !important;
    overflow: hidden !important;
}

body .gpl-journey-detail-v2 .gpl-season-section-header {
    padding: 24px 28px 0 !important;
}

body .gpl-journey-detail-v2 .gpl-season-section-header h2 {
    font-size: 26px !important;
    font-weight: 750 !important;
    letter-spacing: -0.025em !important;
    margin: 0 !important;
}

body .gpl-journey-detail-v2 .gpl-season-panel {
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

body .gpl-journey-detail-v2 .gpl-season-header {
    padding: 22px 28px 16px !important;
    border-bottom: 1px solid var(--gpl-border, #D9DEE8) !important;
    background: var(--gpl-panel, #ffffff) !important;
    gap: 18px !important;
}

body .gpl-journey-detail-v2 .gpl-season-select,
body .gpl-journey-detail-v2 select.gpl-season-select {
    min-height: 46px !important;
    padding: 0 44px 0 16px !important;
    border: 1px solid var(--gpl-border, #D9DEE8) !important;
    border-radius: 10px !important;
    background-color: var(--gpl-panel, #ffffff) !important;
    color: var(--gpl-text, #111827) !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    box-shadow: 0 6px 18px rgba(15, 23, 42, .04) !important;
    outline: none !important;
}

body .gpl-journey-detail-v2 .gpl-season-select:focus,
body .gpl-journey-detail-v2 select.gpl-season-select:focus {
    border-color: var(--gpl-accent, #9EC343) !important;
    box-shadow: 0 0 0 3px rgba(158, 195, 67, .18) !important;
}

body .gpl-journey-detail-v2 .gpl-season-select option {
    color: var(--gpl-text, #111827) !important;
    background: var(--gpl-panel, #ffffff) !important;
}

body .gpl-journey-detail-v2 .gpl-episode-list-v2 {
    background: var(--gpl-panel, #ffffff) !important;
    gap: 0 !important;
}

body .gpl-journey-detail-v2 .gpl-episode-item-v2 {
    background: var(--gpl-panel, #ffffff) !important;
    border: 0 !important;
    border-bottom: 1px solid var(--gpl-border, #D9DEE8) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    overflow: hidden !important;
}

body .gpl-journey-detail-v2 .gpl-episode-item-v2:last-child {
    border-bottom: 0 !important;
}

body .gpl-journey-detail-v2 .gpl-episode-item-v2 > a {
    background: transparent !important;
    color: var(--gpl-text, #111827) !important;
    min-height: 96px !important;
    padding-top: 16px !important;
    padding-bottom: 16px !important;
    transition: background-color .16s ease, box-shadow .16s ease !important;
}

body .gpl-journey-detail-v2 .gpl-episode-item-v2:hover > a {
    background: rgba(158, 195, 67, .08) !important;
}

body .gpl-journey-detail-v2 .gpl-episode-item-v2.is-current > a {
    background: rgba(158, 195, 67, .12) !important;
    box-shadow: inset 4px 0 0 var(--gpl-accent, #9EC343) !important;
}

body .gpl-journey-detail-v2 .gpl-episode-thumb {
    border-radius: 8px !important;
    overflow: hidden !important;
    border: 1px solid var(--gpl-border, #D9DEE8) !important;
    background-color: #e8edf3 !important;
}

body .gpl-journey-detail-v2 .gpl-episode-thumb span {
    background: var(--gpl-accent, #9EC343) !important;
    color: var(--gpl-button-text, #ffffff) !important;
    border: 0 !important;
    border-radius: 8px !important;
}

body .gpl-journey-detail-v2 .gpl-episode-info h4 {
    font-size: 17px !important;
    line-height: 1.28 !important;
    font-weight: 750 !important;
    margin-bottom: 5px !important;
}

body .gpl-journey-detail-v2 .gpl-episode-info p {
    font-size: 14px !important;
    line-height: 1.45 !important;
}

body .gpl-journey-detail-v2 .gpl-episode-duration {
    color: var(--gpl-muted, #667085) !important;
    font-weight: 700 !important;
}

body .gpl-journey-detail-v2 .gpl-inline-badge,
body .gpl-journey-detail-v2 .gpl-episode-meta span {
    background: var(--gpl-badge-bg, var(--gpl-accent, #9EC343)) !important;
    color: var(--gpl-badge-text, #ffffff) !important;
}

body .gpl-journey-detail-v2 .gpl-access-panel,
body .gpl-journey-detail-v2 .gpl-access-card {
    background: var(--gpl-panel, #ffffff) !important;
    color: var(--gpl-text, #111827) !important;
    border-color: var(--gpl-border, #D9DEE8) !important;
}

@media (max-width: 760px) {
    body .gpl-journey-detail-v2 .gpl-season-section-header,
    body .gpl-journey-detail-v2 .gpl-season-header {
        padding-left: 18px !important;
        padding-right: 18px !important;
    }

    body .gpl-journey-detail-v2 .gpl-season-shell {
        border-radius: 12px !important;
    }
}


/* GoPeter StreamLearn v1.6.25 - Journey single page refinement
   Library page popup positioning, arrows, row width, and card sizes remain untouched. */
body .gpl-journey-detail-v2 .gpl-journey-info {
    background: var(--gpl-bg, #f6f7f9) !important;
}

body .gpl-journey-detail-v2 .gpl-journey-about,
body .gpl-journey-detail-v2 .gpl-journey-stats {
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;
}

body .gpl-journey-detail-v2 .gpl-journey-about h2,
body .gpl-journey-detail-v2 .gpl-journey-about p,
body .gpl-journey-detail-v2 .gpl-journey-stat,
body .gpl-journey-detail-v2 .gpl-journey-stat span,
body .gpl-journey-detail-v2 .gpl-journey-stat strong {
    text-shadow: none !important;
}

body .gpl-journey-detail-v2 .gpl-journey-about h2 {
    color: var(--gpl-text, #111827) !important;
    font-size: clamp(24px, 2vw, 30px) !important;
    font-weight: 750 !important;
    margin-bottom: 12px !important;
}

body .gpl-journey-detail-v2 .gpl-journey-about p {
    color: var(--gpl-muted, #667085) !important;
    max-width: 760px !important;
}

body .gpl-journey-detail-v2 .gpl-journey-stats {
    color: var(--gpl-muted, #667085) !important;
}

body .gpl-journey-detail-v2 .gpl-journey-stat span {
    color: var(--gpl-muted, #667085) !important;
}

body .gpl-journey-detail-v2 .gpl-journey-stat strong {
    color: var(--gpl-text, #111827) !important;
    font-weight: 700 !important;
}

body .gpl-journey-detail-v2 .gpl-season-select,
body .gpl-journey-detail-v2 select.gpl-season-select {
    width: 420px !important;
    min-width: 420px !important;
    max-width: min(520px, 100%) !important;
    height: 48px !important;
    padding-left: 18px !important;
    padding-right: 52px !important;
    white-space: nowrap !important;
    text-overflow: ellipsis !important;
}

body .gpl-journey-detail-v2 .gpl-episode-item-v2:nth-child(odd) > a {
    background: rgba(158, 195, 67, .055) !important;
}

body .gpl-journey-detail-v2 .gpl-episode-item-v2:nth-child(even) > a {
    background: transparent !important;
}

body .gpl-journey-detail-v2 .gpl-episode-item-v2:hover > a {
    background: rgba(158, 195, 67, .12) !important;
}

body .gpl-journey-detail-v2 .gpl-episode-item-v2.is-current > a {
    background: rgba(158, 195, 67, .16) !important;
    box-shadow: inset 4px 0 0 var(--gpl-accent, #9EC343) !important;
}

body .gpl-journey-detail-v2 .gpl-episode-number {
    color: var(--gpl-accent, #9EC343) !important;
    font-weight: 800 !important;
    opacity: 1 !important;
}

body .gpl-journey-detail-v2 .gpl-episode-item-v2,
body .gpl-journey-detail-v2 .gpl-episode-item-v2:last-child {
    border-color: var(--gpl-border, #D9DEE8) !important;
}

body .gpl-journey-detail-v2 .gpl-documents-panel .gpl-season-header {
    align-items: center !important;
}

body .gpl-journey-detail-v2 .gpl-document-list {
    background: var(--gpl-panel, #ffffff) !important;
    border-top: 1px solid var(--gpl-border, #D9DEE8) !important;
}

body .gpl-journey-detail-v2 .gpl-document-item {
    color: var(--gpl-text, #111827) !important;
    border-bottom: 1px solid var(--gpl-border, #D9DEE8) !important;
    padding: 22px 28px !important;
}

body .gpl-journey-detail-v2 .gpl-document-item:last-child {
    border-bottom: 0 !important;
}

body .gpl-journey-detail-v2 .gpl-document-icon {
    border-color: var(--gpl-border, #D9DEE8) !important;
    background: rgba(158, 195, 67, .10) !important;
    color: var(--gpl-accent, #9EC343) !important;
}

body .gpl-journey-detail-v2 .gpl-document-copy h4 {
    color: var(--gpl-text, #111827) !important;
}

body .gpl-journey-detail-v2 .gpl-document-copy p,
body .gpl-journey-detail-v2 .gpl-document-copy span {
    color: var(--gpl-muted, #667085) !important;
}

body .gpl-journey-detail-v2 .gpl-document-download {
    background: var(--gpl-accent, #9EC343) !important;
    color: var(--gpl-button-text, #ffffff) !important;
}

body .gpl-journey-detail-v2 .gpl-document-download:hover,
body .gpl-journey-detail-v2 .gpl-document-download:focus {
    background: var(--gpl-accent-dark, #8CAF38) !important;
    color: var(--gpl-button-text, #ffffff) !important;
}

@media (max-width: 900px) {
    body .gpl-journey-detail-v2 .gpl-season-select,
    body .gpl-journey-detail-v2 select.gpl-season-select {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
    }
}


/* GoPeter StreamLearn v1.6.26 - Journey select and episode row edge polish */
body .gpl-journey-detail-v2 .gpl-season-section-header,
body .gpl-journey-detail-v2 .gpl-season-header {
    padding-right: 0 !important;
}

body .gpl-journey-detail-v2 .gpl-season-select,
body .gpl-journey-detail-v2 select.gpl-season-select {
    width: auto !important;
    min-width: 360px !important;
    max-width: min(620px, 100%) !important;
    padding: 0 52px 0 18px !important;
    color: var(--gpl-text, #111827) !important;
    background-color: var(--gpl-panel, #ffffff) !important;
    border: 1px solid var(--gpl-border, #D9DEE8) !important;
    border-radius: 10px !important;
    appearance: none !important;
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    background-image:
        linear-gradient(45deg, transparent 50%, var(--gpl-text, #111827) 50%),
        linear-gradient(135deg, var(--gpl-text, #111827) 50%, transparent 50%) !important;
    background-position: calc(100% - 24px) 50%, calc(100% - 17px) 50% !important;
    background-size: 7px 7px, 7px 7px !important;
    background-repeat: no-repeat !important;
}

body .gpl-journey-detail-v2 .gpl-season-select:focus,
body .gpl-journey-detail-v2 select.gpl-season-select:focus {
    border-color: var(--gpl-accent, #9EC343) !important;
    box-shadow: 0 0 0 3px rgba(158, 195, 67, .18) !important;
    outline: none !important;
}

body .gpl-journey-detail-v2 .gpl-season-select option,
body .gpl-journey-detail-v2 select.gpl-season-select option {
    color: var(--gpl-text, #111827) !important;
    background: var(--gpl-panel, #ffffff) !important;
}

body .gpl-journey-detail-v2 .gpl-episode-item-v2 > a {
    padding-right: 0 !important;
}

body .gpl-journey-detail-v2 .gpl-episode-duration,
body .gpl-journey-detail-v2 .gpl-episode-meta-duration {
    padding-right: 26px !important;
    color: var(--gpl-muted, #667085) !important;
    font-weight: 700 !important;
}

@media (max-width: 900px) {
    body .gpl-journey-detail-v2 .gpl-season-select,
    body .gpl-journey-detail-v2 select.gpl-season-select {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
    }

    body .gpl-journey-detail-v2 .gpl-episode-item-v2 > a {
        padding-right: 16px !important;
    }

    body .gpl-journey-detail-v2 .gpl-episode-duration,
    body .gpl-journey-detail-v2 .gpl-episode-meta-duration {
        padding-right: 0 !important;
    }
}


/* Journey detail select, intro and episode edge polish v1.6.27 */
.gpl-journey-detail-v2 .gpl-journey-about,
.gpl-journey-detail-v2 .gpl-journey-stats {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;
}

.gpl-journey-detail-v2 .gpl-journey-description {
    max-width: 760px !important;
}

.gpl-journey-detail-v2 .gpl-journey-description-text {
    margin: 0 !important;
    color: var(--gpl-muted) !important;
    font-size: 17px !important;
    line-height: 1.65 !important;
}

.gpl-journey-detail-v2 .gpl-journey-description.has-toggle:not(.is-expanded) .gpl-journey-description-text {
    display: -webkit-box !important;
    -webkit-line-clamp: 5 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
}

.gpl-journey-detail-v2 .gpl-description-toggle {
    display: inline-flex !important;
    align-items: center !important;
    margin: 12px 0 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    color: var(--gpl-accent) !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    cursor: pointer !important;
}

.gpl-journey-detail-v2 .gpl-description-toggle:hover,
.gpl-journey-detail-v2 .gpl-description-toggle:focus {
    color: var(--gpl-accent-dark) !important;
    text-decoration: underline !important;
}

.gpl-journey-detail-v2 .gpl-season-header h3 {
    font-size: 22px !important;
    line-height: 1.2 !important;
    font-weight: 800 !important;
    letter-spacing: -0.02em !important;
    color: var(--gpl-text) !important;
}

.gpl-journey-detail-v2 .gpl-season-select {
    width: max-content !important;
    min-width: 320px !important;
    max-width: min(620px, 100%) !important;
    padding: 0 46px 0 18px !important;
    color: var(--gpl-text) !important;
    background-color: #ffffff !important;
    border: 1px solid var(--gpl-border) !important;
    border-radius: 10px !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='10' viewBox='0 0 14 10'%3E%3Cpath fill='%23111827' d='M7 10 0 0h14z'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 18px center !important;
    background-size: 12px 8px !important;
}

.gpl-journey-detail-v2 .gpl-season-select:focus {
    border-color: var(--gpl-accent) !important;
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--gpl-accent) 22%, transparent) !important;
    outline: none !important;
}

.gpl-journey-detail-v2 .gpl-season-shell,
.gpl-journey-detail-v2 .gpl-season-panel,
.gpl-journey-detail-v2 .gpl-episode-list-v2 {
    padding-right: 0 !important;
    margin-right: 0 !important;
}

.gpl-journey-detail-v2 .gpl-episode-item-v2 > a {
    grid-template-columns: 48px 150px minmax(0, 1fr) auto !important;
    padding-right: 0 !important;
}

.gpl-journey-detail-v2 .gpl-episode-duration {
    padding-right: 24px !important;
    min-width: 86px !important;
    text-align: right !important;
    color: var(--gpl-muted) !important;
    font-weight: 800 !important;
}

@media (max-width: 900px) {
    .gpl-journey-detail-v2 .gpl-season-select {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
    }
    .gpl-journey-detail-v2 .gpl-episode-item-v2 > a {
        grid-template-columns: 42px minmax(0, 1fr) !important;
        padding-right: 16px !important;
    }
    .gpl-journey-detail-v2 .gpl-episode-duration {
        padding-right: 0 !important;
        text-align: left !important;
    }
}


/* GoPeter StreamLearn v1.6.30 - About this Journey uses full editor content */
.gpl-journey-detail-v2 .gpl-journey-description-text p {
    margin: 0 0 14px !important;
}

.gpl-journey-detail-v2 .gpl-journey-description-text p:last-child {
    margin-bottom: 0 !important;
}

.gpl-journey-detail-v2 .gpl-journey-description-text ul,
.gpl-journey-detail-v2 .gpl-journey-description-text ol {
    margin: 12px 0 14px 22px !important;
    color: var(--gpl-muted) !important;
}

.gpl-journey-detail-v2 .gpl-journey-description-text li {
    margin-bottom: 6px !important;
}

/* GoPeter StreamLearn v1.6.30 - restore episode panel width after v1.6.29 regression.
   Keeps v1.6.28 journey content, season select, and duration padding behaviour. */
body .gpl-journey-detail-v2 .gpl-season-shell,
body .gpl-journey-detail-v2 .gpl-season-panel {
    width: auto !important;
    max-width: 100% !important;
}

body .gpl-journey-detail-v2 .gpl-episode-item-v2 > a {
    grid-template-columns: 48px 150px minmax(0, 1fr) auto !important;
    padding-right: 0 !important;
}

body .gpl-journey-detail-v2 .gpl-episode-duration {
    padding-right: 24px !important;
    min-width: 86px !important;
    text-align: right !important;
    color: var(--gpl-muted) !important;
    font-weight: 800 !important;
}


/* GoPeter StreamLearn v1.6.31 - restore compact journey episode panel width
   Only fixes the outer Episodes panel width; library page, popup positioning, hero and card sizes untouched. */
body .gpl-journey-detail-v2 .gpl-season-shell {
    width: min(1120px, calc(100% - 48px)) !important;
    max-width: 1120px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

body .gpl-journey-detail-v2 .gpl-seasons-v2,
body .gpl-journey-detail-v2 .gpl-season-panel,
body .gpl-journey-detail-v2 .gpl-episode-list-v2 {
    width: 100% !important;
    max-width: 100% !important;
}

body .gpl-journey-detail-v2 .gpl-episode-item-v2 > a {
    width: 100% !important;
    box-sizing: border-box !important;
    padding-right: 0 !important;
}

body .gpl-journey-detail-v2 .gpl-episode-duration {
    padding-right: 24px !important;
    box-sizing: border-box !important;
}

@media (max-width: 900px) {
    body .gpl-journey-detail-v2 .gpl-season-shell {
        width: calc(100% - 32px) !important;
        max-width: calc(100% - 32px) !important;
    }
}


/* GoPeter StreamLearn v1.6.32 - episode panel edge and season header polish
   Only fixes right padding beside the season selector and removes the white gap before the first episode row. */
body .gpl-journey-detail-v2 .gpl-season-header {
    padding-right: 28px !important;
    margin-bottom: 0 !important;
}

body .gpl-journey-detail-v2 .gpl-season-select,
body .gpl-journey-detail-v2 select.gpl-season-select {
    margin-right: 0 !important;
    box-sizing: border-box !important;
}

body .gpl-journey-detail-v2 .gpl-episode-list-v2 {
    padding-top: 0 !important;
    margin-top: 0 !important;
}

body .gpl-journey-detail-v2 .gpl-season-header + .gpl-episode-list-v2,
body .gpl-journey-detail-v2 .gpl-episode-list-v2 .gpl-episode-item-v2:first-child,
body .gpl-journey-detail-v2 .gpl-episode-list-v2 .gpl-episode-item-v2:first-child > a {
    margin-top: 0 !important;
}

body .gpl-journey-detail-v2 .gpl-episode-list-v2 .gpl-episode-item-v2:first-child > a {
    border-top: 0 !important;
}

@media (max-width: 900px) {
    body .gpl-journey-detail-v2 .gpl-season-header {
        padding-right: 20px !important;
    }
}


/* GoPeter StreamLearn v1.6.33 - Journey active-row CTA and hero continue button
   Library page, popup positioning, carousel arrows, card sizes and hero layout remain untouched. */
body .gpl-journey-detail-v2 .gpl-detail-hero .gpl-actions {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 12px !important;
    align-items: center !important;
    margin-top: 24px !important;
}

body .gpl-journey-detail-v2 .gpl-detail-hero .gpl-button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 44px !important;
    padding: 0 20px !important;
    border-radius: 999px !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    text-decoration: none !important;
}

body .gpl-journey-detail-v2 .gpl-detail-hero .gpl-button-primary {
    background: var(--gpl-accent, #9EC343) !important;
    border: 1px solid var(--gpl-accent, #9EC343) !important;
    color: var(--gpl-button-text, #ffffff) !important;
}

body .gpl-journey-detail-v2 .gpl-detail-hero .gpl-button-primary:hover,
body .gpl-journey-detail-v2 .gpl-detail-hero .gpl-button-primary:focus {
    background: var(--gpl-accent-dark, #8CAF38) !important;
    border-color: var(--gpl-accent-dark, #8CAF38) !important;
    color: var(--gpl-button-text, #ffffff) !important;
}

body .gpl-journey-detail-v2 .gpl-detail-hero .gpl-button-secondary {
    background: rgba(255,255,255,.12) !important;
    border: 1px solid rgba(255,255,255,.28) !important;
    color: #ffffff !important;
}

body .gpl-journey-detail-v2 .gpl-episode-item-v2 > a {
    background: transparent !important;
}

body .gpl-journey-detail-v2 .gpl-episode-item-v2:not(.is-current):hover > a {
    background: rgba(158, 195, 67, .08) !important;
}

body .gpl-journey-detail-v2 .gpl-episode-item-v2.is-current > a {
    background: rgba(158, 195, 67, .14) !important;
    box-shadow: inset 4px 0 0 var(--gpl-accent, #9EC343) !important;
}

body .gpl-journey-detail-v2 .gpl-episode-continue {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: fit-content !important;
    min-height: 30px !important;
    margin-top: 10px !important;
    padding: 0 14px !important;
    border-radius: 999px !important;
    background: var(--gpl-accent, #9EC343) !important;
    color: var(--gpl-button-text, #ffffff) !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
}

body .gpl-journey-detail-v2 .gpl-episode-item-v2.is-current:hover .gpl-episode-continue {
    background: var(--gpl-accent-dark, #8CAF38) !important;
}


/* Journey active row action polish v1.6.34 */
body .gpl-journey-detail-v2 .gpl-episode-item-v2:nth-child(odd) > a,
body .gpl-journey-detail-v2 .gpl-episode-item-v2:nth-child(even) > a {
    background: transparent !important;
}

body .gpl-journey-detail-v2 .gpl-episode-item-v2.is-current > a {
    background: rgba(158, 195, 67, .13) !important;
    box-shadow: inset 4px 0 0 var(--gpl-accent, #9EC343) !important;
}

body .gpl-journey-detail-v2 .gpl-episode-item-v2:hover > a {
    background: rgba(158, 195, 67, .08) !important;
}

body .gpl-journey-detail-v2 .gpl-episode-item-v2 > a {
    position: relative !important;
}

body .gpl-journey-detail-v2 .gpl-episode-continue {
    position: absolute !important;
    right: 116px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 150px !important;
    height: 38px !important;
    padding: 0 22px !important;
    border-radius: 999px !important;
    background: var(--gpl-accent, #9EC343) !important;
    color: var(--gpl-button-text, #ffffff) !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    white-space: nowrap !important;
    box-shadow: 0 10px 24px rgba(17, 24, 39, .10) !important;
    z-index: 3 !important;
}

body .gpl-journey-detail-v2 .gpl-episode-item-v2.is-current .gpl-episode-info {
    padding-right: 190px !important;
}

body .gpl-journey-detail-v2 .gpl-episode-duration {
    position: relative !important;
    z-index: 4 !important;
}

@media (max-width: 900px) {
    body .gpl-journey-detail-v2 .gpl-episode-continue {
        position: static !important;
        transform: none !important;
        margin-top: 10px !important;
        min-width: 0 !important;
        height: 34px !important;
        padding: 0 16px !important;
    }
    body .gpl-journey-detail-v2 .gpl-episode-item-v2.is-current .gpl-episode-info {
        padding-right: 0 !important;
    }
}


/* GoPeter StreamLearn v1.6.35 - season labels, hero secondary button and resources polish.
   Library page, popup positioning, carousel arrows, card sizes and hero layout untouched. */
body .gpl-journey-detail-v2 .gpl-detail-hero .gpl-intro-open.gpl-button-secondary {
    background: rgba(255,255,255,.11) !important;
    border: 1px solid rgba(255,255,255,.30) !important;
    color: #ffffff !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.10) !important;
}

body .gpl-journey-detail-v2 .gpl-detail-hero .gpl-intro-open.gpl-button-secondary:hover,
body .gpl-journey-detail-v2 .gpl-detail-hero .gpl-intro-open.gpl-button-secondary:focus {
    background: rgba(255,255,255,.18) !important;
    border-color: rgba(255,255,255,.42) !important;
    color: #ffffff !important;
}

body .gpl-journey-detail-v2 .gpl-documents-panel .gpl-season-title-wrap h3 {
    margin-bottom: 6px !important;
}

body .gpl-journey-detail-v2 .gpl-documents-panel .gpl-season-title-wrap p {
    max-width: 520px !important;
    margin: 0 !important;
    font-size: 14px !important;
    line-height: 1.45 !important;
}

body .gpl-journey-detail-v2 .gpl-document-list {
    display: grid !important;
    gap: 0 !important;
    border-top: 1px solid var(--gpl-border) !important;
}

body .gpl-journey-detail-v2 .gpl-document-item {
    display: grid !important;
    grid-template-columns: 70px minmax(0, 1fr) auto !important;
    gap: 24px !important;
    align-items: center !important;
    padding: 24px 28px !important;
    border-bottom: 1px solid var(--gpl-border) !important;
    background: transparent !important;
}

body .gpl-journey-detail-v2 .gpl-document-item:last-child {
    border-bottom: 0 !important;
}

body .gpl-journey-detail-v2 .gpl-document-icon {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 52px !important;
    height: 52px !important;
    border: 1px solid var(--gpl-border) !important;
    border-radius: 10px !important;
    background: rgba(158,195,67,.10) !important;
    color: var(--gpl-accent) !important;
    font-size: 13px !important;
    font-weight: 900 !important;
    letter-spacing: .04em !important;
}

body .gpl-journey-detail-v2 .gpl-document-copy h4 {
    margin: 0 0 6px !important;
    color: var(--gpl-text) !important;
    font-size: 18px !important;
    font-weight: 800 !important;
}

body .gpl-journey-detail-v2 .gpl-document-copy p {
    margin: 0 0 6px !important;
    color: var(--gpl-muted) !important;
    font-size: 14px !important;
    line-height: 1.45 !important;
}

body .gpl-journey-detail-v2 .gpl-document-copy span {
    color: var(--gpl-muted) !important;
    font-size: 12px !important;
    font-weight: 600 !important;
}

body .gpl-journey-detail-v2 .gpl-document-download {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 42px !important;
    padding: 0 22px !important;
    border-radius: 999px !important;
    background: var(--gpl-accent) !important;
    color: var(--gpl-button-text) !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    text-decoration: none !important;
}

body .gpl-journey-detail-v2 .gpl-document-download:hover,
body .gpl-journey-detail-v2 .gpl-document-download:focus {
    background: var(--gpl-accent-dark) !important;
    color: var(--gpl-button-text) !important;
}

@media (max-width: 760px) {
    body .gpl-journey-detail-v2 .gpl-document-item {
        grid-template-columns: 52px minmax(0, 1fr) !important;
        gap: 14px !important;
        padding: 20px !important;
    }
    body .gpl-journey-detail-v2 .gpl-document-download {
        grid-column: 1 / -1 !important;
        width: fit-content !important;
    }
}


/* GoPeter StreamLearn v1.6.36 - documents header and compact selector polish.
   Library page, popup positioning, carousel arrows, hero, episode panel width and card sizes untouched. */
body .gpl-journey-detail-v2 .gpl-season-select,
body .gpl-journey-detail-v2 select.gpl-season-select {
    width: 320px !important;
    min-width: 320px !important;
    max-width: 100% !important;
    padding-right: 48px !important;
}

body .gpl-journey-detail-v2 .gpl-documents-panel .gpl-season-title-wrap h3 {
    display: inline !important;
    margin: 0 8px 0 0 !important;
    font-size: 22px !important;
    line-height: 1.25 !important;
    font-weight: 800 !important;
    color: var(--gpl-text, #111827) !important;
}

body .gpl-journey-detail-v2 .gpl-documents-panel .gpl-season-title-wrap p {
    display: inline !important;
    margin: 0 !important;
    max-width: none !important;
    color: var(--gpl-muted, #667085) !important;
    font-size: 14px !important;
    line-height: 1.45 !important;
}

body .gpl-journey-detail-v2 .gpl-documents-panel .gpl-document-list {
    border-top: 0 !important;
}

body .gpl-journey-detail-v2 .gpl-documents-panel .gpl-document-item:first-child {
    border-top: 0 !important;
}

@media (max-width: 760px) {
    body .gpl-journey-detail-v2 .gpl-season-select,
    body .gpl-journey-detail-v2 select.gpl-season-select {
        width: 100% !important;
        min-width: 0 !important;
    }
    body .gpl-journey-detail-v2 .gpl-documents-panel .gpl-season-title-wrap h3,
    body .gpl-journey-detail-v2 .gpl-documents-panel .gpl-season-title-wrap p {
        display: block !important;
    }
    body .gpl-journey-detail-v2 .gpl-documents-panel .gpl-season-title-wrap h3 {
        margin-bottom: 6px !important;
    }
}

/* GoPeter StreamLearn v1.6.37 - compact Documents/Season selector.
   Only reduces selector width. No hero, library, popup, carousel, card, or episode layout changes. */
body .gpl-journey-detail-v2 .gpl-season-select,
body .gpl-journey-detail-v2 select.gpl-season-select {
    width: 240px !important;
    min-width: 240px !important;
    max-width: 100% !important;
    padding-right: 44px !important;
}

body .gpl-journey-detail-v2 .gpl-documents-panel .gpl-season-select,
body .gpl-journey-detail-v2 .gpl-documents-panel select.gpl-season-select {
    width: 240px !important;
    min-width: 240px !important;
}

@media (max-width: 760px) {
    body .gpl-journey-detail-v2 .gpl-season-select,
    body .gpl-journey-detail-v2 select.gpl-season-select {
        width: 100% !important;
        min-width: 0 !important;
    }
}


/* GoPeter StreamLearn v1.6.38 - episode player top label and next colour */
.gpl-episode-page-fullscreen .gpl-player-next {
    background: var(--gpl-accent, #9EC343) !important;
    border-color: var(--gpl-accent, #9EC343) !important;
    color: var(--gpl-button-text, #ffffff) !important;
}

.gpl-episode-page-fullscreen .gpl-player-next:hover {
    background: var(--gpl-accent-dark, #8CAF38) !important;
    border-color: var(--gpl-accent-dark, #8CAF38) !important;
    color: var(--gpl-button-text, #ffffff) !important;
    opacity: 1 !important;
}


/* GoPeter StreamLearn v1.6.40 - pricing page polish */
body:has(.gpl-access-shop-page) {
    background: var(--gpl-bg, #f6f7f9) !important;
}

.gpl-access-shop-page {
    max-width: 1320px !important;
    padding: 64px 24px 90px !important;
    background: var(--gpl-bg, #f6f7f9) !important;
}

.gpl-access-shop-module {
    border: 1px solid var(--gpl-border, #d9dee8) !important;
    border-radius: 22px !important;
    background: var(--gpl-panel, #ffffff) !important;
    padding: clamp(28px, 4vw, 48px) !important;
    box-shadow: 0 20px 50px rgba(15, 23, 42, .06) !important;
}

.gpl-access-shop-module h2 {
    margin: 0 0 6px !important;
    font-size: clamp(32px, 3vw, 44px) !important;
    line-height: 1.05 !important;
    letter-spacing: -.035em !important;
    font-weight: 850 !important;
}

.gpl-access-shop-subheading {
    margin: 0 0 28px !important;
    font-size: 17px !important;
    color: var(--gpl-muted, #667085) !important;
}

.gpl-access-shop-module .gpl-access-grid {
    display: grid !important;
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    gap: 16px !important;
}

.gpl-access-shop-module .gpl-access-card {
    position: relative !important;
    display: flex !important;
    min-height: 210px !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 10px !important;
    padding: 24px 22px !important;
    border: 1px solid var(--gpl-border, #d9dee8) !important;
    border-radius: 18px !important;
    background: var(--gpl-panel, #ffffff) !important;
    color: var(--gpl-text, #111827) !important;
    text-decoration: none !important;
    box-shadow: 0 8px 22px rgba(15, 23, 42, .04) !important;
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease !important;
}

.gpl-access-shop-module .gpl-access-card:hover,
.gpl-access-shop-module .gpl-access-card:focus {
    transform: translateY(-4px) !important;
    border-color: var(--gpl-accent, #9EC343) !important;
    box-shadow: 0 18px 38px rgba(15, 23, 42, .10) !important;
    outline: none !important;
}

.gpl-access-shop-module .gpl-access-card.is-recommended {
    border-color: var(--gpl-accent, #9EC343) !important;
    box-shadow: 0 16px 36px rgba(158, 195, 67, .16) !important;
}

.gpl-access-shop-module .gpl-access-badge {
    position: absolute !important;
    top: -13px !important;
    left: 18px !important;
    display: inline-flex !important;
    align-items: center !important;
    height: 26px !important;
    padding: 0 12px !important;
    border-radius: 999px !important;
    font-size: 11px !important;
    font-weight: 900 !important;
    letter-spacing: .03em !important;
    text-transform: uppercase !important;
    background: var(--gpl-accent, #9EC343) !important;
    color: var(--gpl-button-text, #ffffff) !important;
}

.gpl-access-shop-module .gpl-access-duration {
    margin-top: 2px !important;
    font-size: 16px !important;
    font-weight: 900 !important;
    letter-spacing: .01em !important;
    color: var(--gpl-text, #111827) !important;
}

.gpl-access-shop-module .gpl-access-title {
    min-height: 38px !important;
    font-size: 14px !important;
    line-height: 1.35 !important;
    color: var(--gpl-muted, #667085) !important;
}

.gpl-access-shop-module .gpl-access-price {
    margin-top: auto !important;
    font-size: clamp(24px, 2.2vw, 32px) !important;
    line-height: 1 !important;
    font-weight: 900 !important;
    letter-spacing: -.035em !important;
    color: var(--gpl-text, #111827) !important;
}

.gpl-access-shop-module .gpl-access-cta {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 42px !important;
    width: 100% !important;
    margin-top: 10px !important;
    padding: 10px 16px !important;
    border-radius: 999px !important;
    background: var(--gpl-accent, #9EC343) !important;
    color: var(--gpl-button-text, #ffffff) !important;
    font-size: 14px !important;
    font-weight: 900 !important;
    text-align: center !important;
    transition: background .18s ease !important;
}

.gpl-access-shop-module .gpl-access-card:hover .gpl-access-cta,
.gpl-access-shop-module .gpl-access-card:focus .gpl-access-cta {
    background: var(--gpl-accent-dark, #8CAF38) !important;
}

@media (max-width: 1120px) {
    .gpl-access-shop-module .gpl-access-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 760px) {
    .gpl-access-shop-page {
        padding: 32px 14px 60px !important;
    }

    .gpl-access-shop-module .gpl-access-grid {
        grid-template-columns: 1fr !important;
    }
}

/* GoPeter StreamLearn v1.6.40 - pricing compact price polish */
.gpl-access-shop-module .gpl-access-card {
    min-height: 190px !important;
    padding: 22px 20px !important;
    gap: 8px !important;
}

.gpl-access-shop-module .gpl-access-title {
    min-height: 30px !important;
}

.gpl-access-shop-module .gpl-access-price {
    white-space: nowrap !important;
    word-break: keep-all !important;
    overflow-wrap: normal !important;
    font-size: clamp(24px, 1.85vw, 30px) !important;
    line-height: 1.05 !important;
}

.gpl-access-shop-module .gpl-access-cta {
    min-height: 40px !important;
    margin-top: 8px !important;
}

@media (max-width: 1120px) {
    .gpl-access-shop-module .gpl-access-price {
        font-size: 30px !important;
    }
}

/* GoPeter StreamLearn v1.6.41 - pricing mobile responsiveness */
@media (max-width: 760px) {
    body:has(.gpl-access-shop-page) {
        overflow-x: hidden !important;
    }

    .gpl-access-shop-page {
        width: 100% !important;
        max-width: 100% !important;
        padding: 24px 14px 52px !important;
        box-sizing: border-box !important;
    }

    .gpl-access-shop-module {
        width: 100% !important;
        max-width: 100% !important;
        padding: 24px !important;
        border-radius: 18px !important;
        box-sizing: border-box !important;
    }

    .gpl-access-shop-module h2 {
        font-size: 30px !important;
        line-height: 1.08 !important;
        margin-bottom: 6px !important;
    }

    .gpl-access-shop-subheading {
        margin-bottom: 22px !important;
        font-size: 15px !important;
        line-height: 1.45 !important;
    }

    .gpl-access-shop-module .gpl-access-grid {
        grid-template-columns: 1fr !important;
        gap: 16px !important;
    }

    .gpl-access-shop-module .gpl-access-card {
        min-height: 0 !important;
        padding: 22px 20px !important;
        border-radius: 16px !important;
        gap: 8px !important;
    }

    .gpl-access-shop-module .gpl-access-card:hover,
    .gpl-access-shop-module .gpl-access-card:focus {
        transform: none !important;
    }

    .gpl-access-shop-module .gpl-access-duration {
        font-size: 15px !important;
    }

    .gpl-access-shop-module .gpl-access-title {
        min-height: 0 !important;
        font-size: 13px !important;
    }

    .gpl-access-shop-module .gpl-access-price {
        margin-top: 20px !important;
        font-size: 28px !important;
        line-height: 1.05 !important;
        white-space: nowrap !important;
    }

    .gpl-access-shop-module .gpl-access-cta {
        min-height: 42px !important;
        width: 100% !important;
        margin-top: 10px !important;
        padding: 10px 16px !important;
        font-size: 14px !important;
    }

    .gpl-access-shop-module .gpl-access-badge {
        top: -12px !important;
        left: 18px !important;
    }
}

@media (max-width: 420px) {
    .gpl-access-shop-page {
        padding-left: 10px !important;
        padding-right: 10px !important;
    }

    .gpl-access-shop-module {
        padding: 22px 18px !important;
    }

    .gpl-access-shop-module h2 {
        font-size: 28px !important;
    }
}


/* GoPeter StreamLearn v1.6.42 - pricing mobile compact overflow fix */
@media (max-width: 760px) {
    html,
    body {
        max-width: 100% !important;
        overflow-x: hidden !important;
    }

    body:has(.gpl-access-shop-page),
    body:has(.gpl-access-shop-page) #page,
    body:has(.gpl-access-shop-page) .site,
    body:has(.gpl-access-shop-page) .site-content,
    body:has(.gpl-access-shop-page) .entry-content,
    body:has(.gpl-access-shop-page) .wp-site-blocks {
        max-width: 100% !important;
        overflow-x: hidden !important;
        box-sizing: border-box !important;
    }

    .gpl-access-shop-page {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 auto !important;
        padding: 18px 12px 46px !important;
        box-sizing: border-box !important;
        overflow-x: hidden !important;
    }

    .gpl-access-shop-module {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 22px 16px !important;
        border: 0 !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        background: transparent !important;
        box-sizing: border-box !important;
        overflow-x: hidden !important;
    }

    .gpl-access-shop-module h2 {
        font-size: 28px !important;
        line-height: 1.08 !important;
    }

    .gpl-access-shop-subheading {
        margin-bottom: 18px !important;
    }

    .gpl-access-shop-module .gpl-access-grid {
        width: 100% !important;
        max-width: 100% !important;
        gap: 14px !important;
        box-sizing: border-box !important;
    }

    .gpl-access-shop-module .gpl-access-card {
        width: 100% !important;
        max-width: 100% !important;
        padding: 18px 18px !important;
        border-radius: 16px !important;
        box-sizing: border-box !important;
        overflow: hidden !important;
    }

    .gpl-access-shop-module .gpl-access-price {
        margin-top: 14px !important;
        font-size: 27px !important;
    }

    .gpl-access-shop-module .gpl-access-cta {
        min-height: 38px !important;
        margin-top: 8px !important;
        padding: 8px 14px !important;
        box-sizing: border-box !important;
    }
}

@media (max-width: 420px) {
    .gpl-access-shop-page {
        padding-left: 8px !important;
        padding-right: 8px !important;
    }

    .gpl-access-shop-module {
        padding-left: 12px !important;
        padding-right: 12px !important;
    }

    .gpl-access-shop-module .gpl-access-card {
        padding-left: 16px !important;
        padding-right: 16px !important;
    }
}

/* GoPeter StreamLearn v1.6.43 - pricing mobile compact card footer */
.gpl-access-shop-module .gpl-access-footer {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
    width: 100% !important;
    margin-top: auto !important;
}

.gpl-access-shop-module .gpl-access-footer .gpl-access-price,
.gpl-access-shop-module .gpl-access-footer .gpl-access-cta {
    margin-top: 0 !important;
}

@media (max-width: 760px) {
    .gpl-access-shop-module .gpl-access-card {
        padding: 18px 16px !important;
        gap: 8px !important;
    }

    .gpl-access-shop-module .gpl-access-title {
        font-size: 14px !important;
        line-height: 1.35 !important;
        max-width: 100% !important;
    }

    .gpl-access-shop-module .gpl-access-footer {
        display: grid !important;
        grid-template-columns: minmax(120px, 1fr) minmax(150px, 1.05fr) !important;
        align-items: center !important;
        column-gap: 14px !important;
        margin-top: 8px !important;
    }

    .gpl-access-shop-module .gpl-access-price {
        font-size: 26px !important;
        line-height: 1 !important;
        margin: 0 !important;
    }

    .gpl-access-shop-module .gpl-access-cta {
        width: 100% !important;
        min-height: 38px !important;
        margin: 0 !important;
        padding: 8px 14px !important;
        white-space: nowrap !important;
    }
}

@media (max-width: 380px) {
    .gpl-access-shop-module .gpl-access-footer {
        grid-template-columns: 1fr !important;
        row-gap: 10px !important;
    }
}


/* GoPeter StreamLearn v1.6.44 - pricing mobile badge fix */
@media (max-width: 760px) {
    .gpl-access-shop-module .gpl-access-card.is-recommended {
        padding-top: 16px !important;
    }

    .gpl-access-shop-module .gpl-access-badge {
        position: static !important;
        display: inline-flex !important;
        align-self: flex-start !important;
        height: 22px !important;
        margin: 0 0 2px 0 !important;
        padding: 0 10px !important;
        font-size: 10px !important;
        line-height: 22px !important;
    }
}

/* StreamLearn frontend colour-control fixes v1.6.56 */
.gpl-streamlearn .gpl-button-primary,
.gpl-streamlearn a.gpl-button-primary,
.gpl-streamlearn button.gpl-button-primary,
.gpl-journey-detail-v2 .gpl-detail-hero.has-access .gpl-button-primary,
.gpl-journey-detail-v2 .gpl-detail-hero.no-access .gpl-intro-open,
.gpl-journey-detail-v2 .gpl-episode-item-v2:hover .gpl-episode-cta,
.gpl-journey-detail-v2 .gpl-episode-cta,
.gpl-streamlearn .gpl-card-action,
.gpl-streamlearn .gpl-mark-watched {
    color: var(--gpl-button-text) !important;
}

.gpl-streamlearn .gpl-kicker,
.gpl-streamlearn .gpl-card-badge,
.gpl-streamlearn .gpl-inline-badge,
.gpl-journey-detail-v2 .gpl-detail-hero.has-access .gpl-kicker,
.gpl-journey-detail-v2 .gpl-detail-hero.no-access .gpl-kicker,
.gpl-card-preview-portal .gpl-preview-meta-pill {
    background: var(--gpl-badge-bg) !important;
    color: var(--gpl-badge-text) !important;
}

.gpl-streamlearn .gpl-hero h1,
.gpl-journey-detail-v2 .gpl-detail-hero h1,
.gpl-journey-detail-v2 .gpl-detail-hero .gpl-hero-content h1 {
    color: var(--gpl-text) !important;
}

.gpl-streamlearn .gpl-hero p,
.gpl-journey-detail-v2 .gpl-detail-hero p,
.gpl-journey-detail-v2 .gpl-detail-hero .gpl-hero-content p {
    color: var(--gpl-muted) !important;
}

.gpl-card-preview-portal .gpl-preview-btn,
.gpl-card-preview-portal a.gpl-preview-btn,
.gpl-card-preview-portal button.gpl-preview-btn,
.gpl-card-preview-portal .gpl-watch-later-toggle,
.gpl-card-preview-portal .gpl-favourite-toggle,
.gpl-card-preview-portal .gpl-mark-watched {
    background: var(--gpl-cw-card-btn-bg) !important;
    border-color: var(--gpl-cw-card-btn-bg) !important;
    color: var(--gpl-cw-card-btn-text) !important;
}

.gpl-card-preview-portal .gpl-preview-btn:hover,
.gpl-card-preview-portal a.gpl-preview-btn:hover,
.gpl-card-preview-portal button.gpl-preview-btn:hover,
.gpl-card-preview-portal .gpl-watch-later-toggle:hover,
.gpl-card-preview-portal .gpl-favourite-toggle:hover,
.gpl-card-preview-portal .gpl-mark-watched:hover {
    background: var(--gpl-cw-card-btn-hover-bg) !important;
    border-color: var(--gpl-cw-card-btn-hover-bg) !important;
    color: var(--gpl-cw-card-btn-hover-text) !important;
}

.gpl-card-preview-portal .gpl-preview-primary,
.gpl-card-preview-portal a.gpl-preview-primary,
.gpl-card-preview-portal .gpl-preview-btn.gpl-preview-primary {
    background: var(--gpl-cw-card-btn-active-bg) !important;
    border-color: var(--gpl-cw-card-btn-active-bg) !important;
    color: var(--gpl-cw-card-btn-active-text) !important;
}

.gpl-card-preview-portal .gpl-preview-primary:hover,
.gpl-card-preview-portal a.gpl-preview-primary:hover,
.gpl-card-preview-portal .gpl-preview-btn.gpl-preview-primary:hover {
    background: var(--gpl-cw-card-btn-hover-bg) !important;
    border-color: var(--gpl-cw-card-btn-hover-bg) !important;
    color: var(--gpl-cw-card-btn-hover-text) !important;
}

.gpl-card-preview-portal .gpl-card-badge,
.gpl-card-preview-portal .gpl-preview-meta-pill {
    background: var(--gpl-cw-card-badge-bg) !important;
    color: var(--gpl-cw-card-badge-text) !important;
}

.gpl-journey-detail-v2 .gpl-episode-item-v2:hover,
.gpl-journey-detail-v2 .gpl-episode-item-v2:hover > a {
    background: var(--gpl-episode-hover-bg) !important;
}

.gpl-journey-detail-v2 .gpl-episode-item-v2.is-current,
.gpl-journey-detail-v2 .gpl-episode-item-v2.is-current > a {
    background: var(--gpl-episode-active-bg) !important;
}

.gpl-journey-detail-v2 .gpl-episode-item-v2.is-current {
    border-left: 4px solid var(--gpl-episode-active-border) !important;
}

.gpl-journey-detail-v2 .gpl-episode-thumb-progress span {
    background: var(--gpl-progress) !important;
}

/* StreamLearn colour-control final polish v1.6.57
   Rules:
   - selected episode row colours render as solid colours, no opacity/blend
   - black text only on green/accent and white pill buttons
   - dark/secondary buttons keep white text
   - disabled buttons use muted grey text
*/
body .gpl-journey-detail-v2 .gpl-episode-item-v2.is-current,
body .gpl-journey-detail-v2 .gpl-episode-item-v2.is-current > a,
body .gpl-journey-detail-v2 .gpl-episode-item-v2.is-current:hover,
body .gpl-journey-detail-v2 .gpl-episode-item-v2.is-current:hover > a {
    background: var(--gpl-episode-active-bg, #172014) !important;
    background-color: var(--gpl-episode-active-bg, #172014) !important;
    background-image: none !important;
    box-shadow: none !important;
}

body .gpl-journey-detail-v2 .gpl-episode-item-v2.is-current,
body .gpl-journey-detail-v2 .gpl-episode-item-v2.is-current > a {
    border-left: 4px solid var(--gpl-episode-active-border, #9EC343) !important;
}

body .gpl-journey-detail-v2 .gpl-episode-item-v2:not(.is-current):hover,
body .gpl-journey-detail-v2 .gpl-episode-item-v2:not(.is-current):hover > a {
    background: var(--gpl-episode-hover-bg, #1d1d1d) !important;
    background-color: var(--gpl-episode-hover-bg, #1d1d1d) !important;
    background-image: none !important;
    box-shadow: none !important;
}

body .gpl-journey-detail-v2 .gpl-episode-continue,
body .gpl-journey-detail-v2 .gpl-detail-hero .gpl-button-primary,
body .gpl-streamlearn .gpl-button-primary,
body .gpl-streamlearn button.gpl-button-primary,
body .gpl-episode-page-fullscreen .gpl-player-next {
    background: var(--gpl-accent, #9EC343) !important;
    border-color: var(--gpl-accent, #9EC343) !important;
    color: var(--gpl-button-text, #000000) !important;
}

body .gpl-journey-detail-v2 .gpl-episode-continue:hover,
body .gpl-journey-detail-v2 .gpl-detail-hero .gpl-button-primary:hover,
body .gpl-streamlearn .gpl-button-primary:hover,
body .gpl-streamlearn button.gpl-button-primary:hover,
body .gpl-episode-page-fullscreen .gpl-player-next:hover {
    background: var(--gpl-accent-dark, #8CAF38) !important;
    border-color: var(--gpl-accent-dark, #8CAF38) !important;
    color: var(--gpl-button-text, #000000) !important;
}

body .gpl-journey-detail-v2 .gpl-detail-hero .gpl-button-secondary,
body .gpl-journey-detail-v2 .gpl-detail-hero .gpl-watch-later-toggle,
body .gpl-journey-detail-v2 .gpl-detail-hero .gpl-favourite-toggle,
body .gpl-episode-page-fullscreen .gpl-player-controls .gpl-player-icon-link:not(.gpl-player-next),
body .gpl-episode-page-fullscreen .gpl-player-controls .gpl-watch-later-toggle,
body .gpl-episode-page-fullscreen .gpl-player-controls .gpl-mark-watched {
    background: #1c1c1c !important;
    border-color: #555555 !important;
    color: #ffffff !important;
}

body .gpl-journey-detail-v2 .gpl-detail-hero .gpl-button-secondary:hover,
body .gpl-journey-detail-v2 .gpl-detail-hero .gpl-watch-later-toggle:hover,
body .gpl-journey-detail-v2 .gpl-detail-hero .gpl-favourite-toggle:hover,
body .gpl-episode-page-fullscreen .gpl-player-controls .gpl-player-icon-link:not(.gpl-player-next):hover,
body .gpl-episode-page-fullscreen .gpl-player-controls .gpl-watch-later-toggle:hover,
body .gpl-episode-page-fullscreen .gpl-player-controls .gpl-mark-watched:hover {
    background: #2a2a2a !important;
    border-color: #666666 !important;
    color: #ffffff !important;
}

body .gpl-card-preview-portal .gpl-preview-btn,
body .gpl-card-preview-portal a.gpl-preview-btn,
body .gpl-card-preview-portal button.gpl-preview-btn,
body .gpl-card-preview-portal .gpl-watch-later-toggle,
body .gpl-card-preview-portal .gpl-favourite-toggle,
body .gpl-card-preview-portal .gpl-mark-watched {
    background: var(--gpl-cw-card-btn-bg, #ffffff) !important;
    border-color: var(--gpl-cw-card-btn-bg, #ffffff) !important;
    color: var(--gpl-cw-card-btn-text, #000000) !important;
}

body .gpl-card-preview-portal .gpl-preview-btn:hover,
body .gpl-card-preview-portal a.gpl-preview-btn:hover,
body .gpl-card-preview-portal button.gpl-preview-btn:hover,
body .gpl-card-preview-portal .gpl-watch-later-toggle:hover,
body .gpl-card-preview-portal .gpl-favourite-toggle:hover,
body .gpl-card-preview-portal .gpl-mark-watched:hover {
    background: var(--gpl-cw-card-btn-hover-bg, #9EC343) !important;
    border-color: var(--gpl-cw-card-btn-hover-bg, #9EC343) !important;
    color: var(--gpl-cw-card-btn-hover-text, #000000) !important;
}

body .gpl-card-preview-portal .gpl-preview-primary,
body .gpl-card-preview-portal a.gpl-preview-primary,
body .gpl-card-preview-portal .gpl-preview-btn.gpl-preview-primary {
    background: var(--gpl-cw-card-btn-active-bg, #9EC343) !important;
    border-color: var(--gpl-cw-card-btn-active-bg, #9EC343) !important;
    color: var(--gpl-cw-card-btn-active-text, #000000) !important;
}

body .gpl-card-preview-portal .gpl-preview-primary:hover,
body .gpl-card-preview-portal a.gpl-preview-primary:hover,
body .gpl-card-preview-portal .gpl-preview-btn.gpl-preview-primary:hover {
    background: var(--gpl-cw-card-btn-hover-bg, #9EC343) !important;
    border-color: var(--gpl-cw-card-btn-hover-bg, #9EC343) !important;
    color: var(--gpl-cw-card-btn-hover-text, #000000) !important;
}

body .gpl-card-preview-portal .gpl-preview-btn:disabled,
body .gpl-card-preview-portal button.gpl-preview-btn:disabled,
body .gpl-card-preview-portal .gpl-preview-btn[aria-disabled="true"],
body .gpl-card-preview-portal .gpl-watch-later-toggle:disabled,
body .gpl-card-preview-portal .gpl-favourite-toggle:disabled,
body .gpl-card-preview-portal .gpl-mark-watched:disabled {
    background: #e5e5e5 !important;
    border-color: #e5e5e5 !important;
    color: #999999 !important;
    opacity: 1 !important;
}

body .gpl-episode-page-fullscreen .gpl-player-controls .gpl-player-icon-link:disabled,
body .gpl-episode-page-fullscreen .gpl-player-controls .gpl-player-icon-link[aria-disabled="true"],
body .gpl-episode-page-fullscreen .gpl-player-controls .gpl-mark-watched:disabled {
    background: #242424 !important;
    border-color: #333333 !important;
    color: #777777 !important;
    opacity: 1 !important;
}

body .gpl-card-preview-portal .gpl-card-badge,
body .gpl-card-preview-portal .gpl-preview-meta-pill,
body .gpl-card-preview-portal .gpl-inline-badge,
body .gpl-streamlearn .gpl-inline-badge,
body .gpl-streamlearn .gpl-card-badge,
body .gpl-streamlearn .gpl-status-badge {
    background: var(--gpl-cw-card-badge-bg, var(--gpl-badge-bg, #9EC343)) !important;
    color: var(--gpl-cw-card-badge-text, var(--gpl-badge-text, #000000)) !important;
}


/* StreamLearn v1.6.58 - favourite/saved button colour controls and updated defaults */
body .gpl-card-preview-portal .gpl-watch-later-toggle,
body .gpl-card-preview-portal .gpl-favourite-toggle,
body .gpl-card-preview-portal .gpl-preview-btn.gpl-watch-later-toggle,
body .gpl-card-preview-portal button.gpl-preview-btn.gpl-watch-later-toggle,
body .gpl-card-preview-portal .gpl-preview-btn.gpl-favourite-toggle,
body .gpl-card-preview-portal button.gpl-preview-btn.gpl-favourite-toggle,
body .gpl-hover-actions .gpl-watch-later-toggle,
body .gpl-hover-actions .gpl-favourite-toggle,
body .gpl-streamlearn .gpl-card-action.gpl-remove-favourite,
body .gpl-streamlearn .gpl-card-action.gpl-watch-later-toggle,
body .gpl-journey-detail-v2 .gpl-detail-hero .gpl-watch-later-toggle,
body .gpl-journey-detail-v2 .gpl-detail-hero .gpl-favourite-toggle,
body .gpl-episode-page-fullscreen .gpl-player-controls .gpl-watch-later-toggle,
body .gpl-player-fullscreen .gpl-player-controls .gpl-watch-later-toggle {
    background: var(--gpl-fav-btn-bg, #f4f4f4) !important;
    background-color: var(--gpl-fav-btn-bg, #f4f4f4) !important;
    border-color: var(--gpl-fav-btn-bg, #f4f4f4) !important;
    color: var(--gpl-fav-btn-text, #565656) !important;
    -webkit-text-fill-color: var(--gpl-fav-btn-text, #565656) !important;
    text-shadow: none !important;
    opacity: 1 !important;
}

body .gpl-card-preview-portal .gpl-watch-later-toggle:hover,
body .gpl-card-preview-portal .gpl-favourite-toggle:hover,
body .gpl-card-preview-portal .gpl-preview-btn.gpl-watch-later-toggle:hover,
body .gpl-card-preview-portal button.gpl-preview-btn.gpl-watch-later-toggle:hover,
body .gpl-card-preview-portal .gpl-preview-btn.gpl-favourite-toggle:hover,
body .gpl-card-preview-portal button.gpl-preview-btn.gpl-favourite-toggle:hover,
body .gpl-hover-actions .gpl-watch-later-toggle:hover,
body .gpl-hover-actions .gpl-favourite-toggle:hover,
body .gpl-streamlearn .gpl-card-action.gpl-remove-favourite:hover,
body .gpl-streamlearn .gpl-card-action.gpl-watch-later-toggle:hover,
body .gpl-journey-detail-v2 .gpl-detail-hero .gpl-watch-later-toggle:hover,
body .gpl-journey-detail-v2 .gpl-detail-hero .gpl-favourite-toggle:hover,
body .gpl-episode-page-fullscreen .gpl-player-controls .gpl-watch-later-toggle:hover,
body .gpl-player-fullscreen .gpl-player-controls .gpl-watch-later-toggle:hover {
    background: var(--gpl-fav-btn-hover-bg, #d3d3d3) !important;
    background-color: var(--gpl-fav-btn-hover-bg, #d3d3d3) !important;
    border-color: var(--gpl-fav-btn-hover-bg, #d3d3d3) !important;
    color: var(--gpl-fav-btn-hover-text, #000000) !important;
    -webkit-text-fill-color: var(--gpl-fav-btn-hover-text, #000000) !important;
    opacity: 1 !important;
}

body .gpl-card-preview-portal .gpl-watch-later-toggle.is-saved,
body .gpl-card-preview-portal .gpl-watch-later-toggle.is-saved:hover,
body .gpl-card-preview-portal .gpl-favourite-toggle.is-favourited,
body .gpl-card-preview-portal .gpl-favourite-toggle.is-favourited:hover,
body .gpl-card-preview-portal .gpl-preview-btn.is-saved,
body .gpl-card-preview-portal .gpl-preview-btn.is-favourited,
body .gpl-journey-card.is-favourited .gpl-favourite-toggle,
body .gpl-watch-later-toggle.is-saved,
body .gpl-favourite-toggle.is-favourited {
    background: var(--gpl-fav-btn-active-bg, #f4f4f4) !important;
    background-color: var(--gpl-fav-btn-active-bg, #f4f4f4) !important;
    border-color: var(--gpl-fav-btn-active-bg, #f4f4f4) !important;
    color: var(--gpl-fav-btn-active-text, #565656) !important;
    -webkit-text-fill-color: var(--gpl-fav-btn-active-text, #565656) !important;
    opacity: 1 !important;
}

body .gpl-card-preview-portal .gpl-watch-later-toggle:disabled,
body .gpl-card-preview-portal .gpl-favourite-toggle:disabled,
body .gpl-card-preview-portal .gpl-preview-btn.gpl-watch-later-toggle:disabled,
body .gpl-card-preview-portal .gpl-preview-btn.gpl-favourite-toggle:disabled,
body .gpl-card-preview-portal .gpl-watch-later-toggle[aria-disabled="true"],
body .gpl-card-preview-portal .gpl-favourite-toggle[aria-disabled="true"],
body .gpl-hover-actions .gpl-watch-later-toggle:disabled,
body .gpl-hover-actions .gpl-favourite-toggle:disabled,
body .gpl-streamlearn .gpl-card-action.gpl-remove-favourite:disabled,
body .gpl-streamlearn .gpl-card-action.gpl-remove-favourite[aria-disabled="true"],
body .gpl-journey-detail-v2 .gpl-detail-hero .gpl-watch-later-toggle:disabled,
body .gpl-journey-detail-v2 .gpl-detail-hero .gpl-favourite-toggle:disabled,
body .gpl-episode-page-fullscreen .gpl-player-controls .gpl-watch-later-toggle:disabled,
body .gpl-player-fullscreen .gpl-player-controls .gpl-watch-later-toggle:disabled {
    background: var(--gpl-fav-btn-disabled-bg, #e5e5e5) !important;
    background-color: var(--gpl-fav-btn-disabled-bg, #e5e5e5) !important;
    border-color: var(--gpl-fav-btn-disabled-bg, #e5e5e5) !important;
    color: var(--gpl-fav-btn-disabled-text, #999999) !important;
    -webkit-text-fill-color: var(--gpl-fav-btn-disabled-text, #999999) !important;
    opacity: 1 !important;
}


/* GoPeter StreamLearn v1.6.60 - Single Journey hero spacing */
.gpl-journey-detail-v2 .gpl-detail-hero,
.gpl-streamlearn .gpl-detail-hero {
    margin: 16px clamp(16px, 1.2vw, 24px) 28px !important;
}

@media (max-width: 767px) {
    .gpl-journey-detail-v2 .gpl-detail-hero,
    .gpl-streamlearn .gpl-detail-hero {
        margin: 10px 10px 22px !important;
    }
}
