.ytpp-wrapper {
	max-width: 100%;
	margin: 1rem 0;
}

.ytpp-url-form {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	align-items: center;
	margin-bottom: 0.75rem;
}

.ytpp-url-form label {
	font-weight: 600;
}

.ytpp-url-input {
	min-width: 0;
	flex: 1 1 auto;
	padding: 0.65rem 0.8rem;
}

.ytpp-player-shell {
	position: relative;
	width: 100%;
	height: 100%;
	padding-bottom: 56.25%; /* Responsive 16:9 - prevents small/cropped height */
	overflow: hidden;
	border-radius: 10px;
	background: #000;
}

.ytpp-player,
.ytpp-player iframe {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	pointer-events: auto; /* Allows interaction; set none to disable all hovers */
}

.ytpp-overlay-controls {
	position: absolute;
	top: 0.5rem;
	right: 0.5rem;
	z-index: 20;
	/* Your custom top-right controls here */
	display: none; /* Hide unless needed */
}

.ytpp-player-shell:hover .ytpp-overlay-controls {
	display: none; /* Show custom on hover */
}

.ytpp-btn {
	/* Custom button styles */
}

.ytpp-btn:hover {
	/* Custom hover */
}

.ytpp-meta {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 15;
	display: flex;
	flex-direction: column;
	gap: 0.15rem;
	padding: 0.5rem 0.75rem 0.65rem;
	background: linear-gradient(transparent, rgba(0, 0, 0, 0.72));
	color: #fff;
	font-size: 0.95rem;
}

.ytpp-video-title {
	font-weight: 600;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.ytpp-playlist-count {
	font-size: 0.85rem;
	opacity: 0.9;
}

.ytpp-recent-playlists {
	margin-top: 0.85rem;
}

.ytpp-recent-list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	gap: 0.35rem;
}

.ytpp-recent-item a {
	text-decoration: none;
}

.ytpp-embed-replacement.loading .ytpp-player-shell,
.ytpp-wrapper.loading .ytpp-player-shell {
	opacity: 0.7;
}