.ssp-player {
	aspect-ratio: 16 / 9;
	background: #030712;
	border: var(--ssp-border-width) var(--ssp-border-style) var(--ssp-border);
	border-radius: var(--ssp-radius);
	box-shadow: 0 18px 50px rgba(0, 0, 0, .42);
	box-sizing: content-box;
	max-height: calc(100vh - 32px);
	max-width: calc(100vw - 32px);
	overflow: visible;
	pointer-events: auto;
	margin: 0 var(--ssp-side) 20px auto;
	position: relative;
	width: min(var(--ssp-desktop-width), calc(100vw - 32px));
	z-index: 2147483000;
}
.ssp-player.ssp-floating {
	bottom: var(--ssp-bottom);
	margin: 0;
	position: fixed;
	right: var(--ssp-side);
}
.ssp-player.ssp-startup-inline {
	border-color: transparent;
	border-radius: 0;
	box-shadow: none;
	max-height: none;
	overflow: visible;
	z-index: auto;
}
.ssp-player.ssp-startup-inline .ssp-media {
	border-radius: 0;
	overflow: visible;
}
.ssp-player.ssp-startup-inline .ssp-toolbar,
.ssp-player.ssp-startup-inline .ssp-resize {
	display: none;
}
.ssp-player.ssp-provider-twitch {
	aspect-ratio: 620 / 378;
	border: 0;
	border-radius: 12px;
	box-shadow: none;
	max-width: calc(100vw - 8px);
	min-width: 0;
	width: min(360px, calc(100vw - 16px));
}
.ssp-player.ssp-floating.ssp-provider-twitch {
	aspect-ratio: 620 / 378;
	min-width: 0;
	padding: 0;
	width: min(360px, calc(100vw - 16px));
}
.ssp-player.ssp-provider-twitch.ssp-autoplay-arming,
.ssp-player.ssp-floating.ssp-provider-twitch.ssp-autoplay-arming {
	aspect-ratio: 4 / 3;
	max-width: none;
	min-width: 400px;
	width: 400px;
}
.ssp-player.ssp-provider-twitch .ssp-media {
	border-radius: 12px;
	overflow: hidden;
}
.ssp-player.ssp-floating.ssp-provider-twitch .ssp-media {
	aspect-ratio: auto;
	height: 100%;
}
.ssp-player.ssp-provider-twitch .ssp-resize,
.ssp-player.ssp-provider-twitch .ssp-drag-zone,
.ssp-player.ssp-provider-twitch .ssp-reset {
	display: none;
}
.ssp-player.ssp-provider-twitch .ssp-twitch-mount {
	height: 378px;
	left: 0;
	max-width: none;
	position: absolute;
	top: 0;
	transform: scale(var(--ssp-twitch-scale, .580645));
	transform-origin: top left;
	width: 620px;
}
.ssp-player.ssp-provider-twitch.ssp-autoplay-arming .ssp-twitch-mount {
	height: 300px;
	left: auto;
	position: static;
	top: auto;
	transform: none;
	width: 400px;
}
.ssp-player.ssp-provider-twitch #ssp-twitch-player {
	height: 378px;
	left: 0;
	max-width: none;
	position: absolute;
	top: 0;
	transform: scale(var(--ssp-twitch-scale, .645161));
	transform-origin: top left;
	width: 620px;
}
.ssp-player.ssp-provider-twitch.ssp-autoplay-arming #ssp-twitch-player {
	height: 300px;
	left: auto;
	position: static;
	top: auto;
	transform: none;
	width: 400px;
}
.ssp-player.ssp-floating.ssp-provider-twitch .ssp-toolbar {
	background: transparent;
	border-radius: 50%;
	cursor: default;
	display: flex;
	height: 28px;
	left: auto;
	right: 0;
	top: -34px;
	width: 28px;
	z-index: 3;
}
.ssp-player.ssp-floating.ssp-provider-twitch .ssp-reset {
	border-radius: 0;
}
.ssp-player.ssp-floating.ssp-provider-twitch .ssp-close {
	background: rgba(3, 7, 18, .78);
	border-radius: 50%;
	height: 28px;
	width: 28px;
}
.ssp-player.ssp-floating.ssp-provider-twitch .ssp-drag-zone {
	right: 58px;
}
.ssp-player.ssp-floating.ssp-provider-twitch .ssp-drag-zone::after {
	color: rgba(255, 255, 255, .72);
	content: "⋮";
	font: 700 18px/28px system-ui, sans-serif;
	left: 10px;
	position: absolute;
	top: 0;
}
.ssp-player.ssp-floating.ssp-provider-twitch .ssp-resize {
	bottom: -18px;
	height: 16px;
	left: auto;
	right: 4px;
	width: 16px;
}
.ssp-player.ssp-provider-youtube {
	min-width: 356px;
}
.ssp-player .screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px;
	word-wrap: normal !important;
}
.ssp-toolbar {
	align-items: center;
	background: transparent;
	border-radius: calc(var(--ssp-radius) - 3px);
	cursor: move;
	display: flex;
	height: 30px;
	justify-content: flex-end;
	left: 0;
	position: absolute;
	pointer-events: none;
	right: 0;
	top: 0;
	touch-action: none;
	z-index: 3;
}
.ssp-drag-zone {
	bottom: 0;
	cursor: move;
	left: 0;
	pointer-events: auto;
	position: absolute;
	right: 58px;
	top: 0;
	touch-action: none;
}
.ssp-close,.ssp-reset {
	align-items: center;
	appearance: none;
	background: rgba(3, 7, 18, .72);
	border: 0;
	color: #fff;
	cursor: pointer;
	display: flex;
	font: 500 21px/1 system-ui, sans-serif;
	height: 28px;
	justify-content: center;
	padding: 0;
	pointer-events: auto;
	width: 29px;
}
.ssp-reset { border-radius: 0 0 0 8px; font-size: 17px; }
.ssp-close { border-radius: 0 calc(var(--ssp-radius) - 3px) 0 0; }
.ssp-close:hover,.ssp-close:focus-visible { background: #dc2626; }
.ssp-reset:hover,.ssp-reset:focus-visible { background: #374151; }
.ssp-media {
	background: #030712;
	border-radius: calc(var(--ssp-radius) - var(--ssp-border-width));
	height: 100%;
	overflow: hidden;
	pointer-events: auto;
	position: relative;
	width: 100%;
}
.ssp-media iframe,.ssp-twitch-mount { border: 0; display: block; height: 100%; width: 100%; }
.ssp-offline {
	align-items: center;
	background: radial-gradient(circle at top, #312e81, #030712 70%);
	background-position: center;
	background-size: cover;
	box-sizing: border-box;
	color: #fff;
	display: flex;
	flex-direction: column;
	height: 100%;
	justify-content: center;
	padding: 42px 24px 20px;
	text-align: center;
}
.ssp-offline strong { font: 700 clamp(18px, 4vw, 28px)/1.15 system-ui, sans-serif; }
.ssp-offline p { color: #d1d5db; font: 400 14px/1.45 system-ui, sans-serif; margin: 9px 0 14px; }
.ssp-offline a { background: var(--ssp-border); border-radius: 7px; color: #fff; font: 700 13px/1 system-ui, sans-serif; padding: 10px 14px; text-decoration: none; }
.ssp-resize {
	border: 0;
	bottom: 0;
	cursor: nwse-resize;
	height: 44px;
	left: 0;
	opacity: 1;
	pointer-events: auto;
	position: absolute;
	touch-action: none;
	width: 44px;
	z-index: 4;
}
.ssp-resize::after {
	border-bottom: 3px solid #fff;
	border-right: 3px solid #fff;
	bottom: 2px;
	content: "";
	height: 8px;
	left: auto;
	opacity: .9;
	position: absolute;
	right: 2px;
	width: 8px;
}
.ssp-player.ssp-is-dragging,.ssp-player.ssp-is-resizing {
	transition: none;
	user-select: none;
	will-change: left, top, width;
}
.ssp-player.ssp-is-dragging iframe,.ssp-player.ssp-is-resizing iframe { pointer-events: none; }
@media (max-width: 767px) {
	.ssp-player.ssp-floating {
		bottom: var(--ssp-bottom);
		left: 50%;
		max-width: calc(100vw - 16px);
		right: auto;
		top: auto;
		transform: translateX(-50%);
		width: var(--ssp-mobile-width);
	}
	.ssp-player.ssp-startup-inline {
		margin: 0 auto 16px;
	}
	.ssp-player.ssp-provider-twitch {
		max-width: none;
		min-width: 0;
		width: auto;
	}
	.ssp-player.ssp-floating.ssp-provider-twitch {
		left: 50vw;
		max-width: none;
		min-width: 0;
		padding: 0;
		right: auto;
		transform: translateX(-50%);
		width: min(340px, calc(100vw - 16px));
	}
	.ssp-player.ssp-floating.ssp-provider-twitch.ssp-autoplay-arming {
		left: 50%;
		min-width: 400px;
		right: auto;
		transform: translateX(-50%);
		width: 400px;
	}
	.ssp-player.ssp-floating.ssp-provider-twitch.ssp-autoplay-arming .ssp-toolbar {
		right: 20px;
	}
	.ssp-player.ssp-provider-youtube {
		min-width: min(356px, calc(100vw - 16px));
	}
}
@media (prefers-reduced-motion: no-preference) {
	.ssp-player { transition: box-shadow .18s ease, opacity .18s ease; }
}
