
.player-container {
	container-type: inline-size;
	container-name: player-container;
}

.playback-bar {
	position: absolute;
	bottom: 0px;
	width: var(--playback-bar-width);
	min-height: var(--playback-bar-height);
	left: calc((100% - var(--playback-bar-width)) / 2);
	right: calc((100% - var(--playback-bar-width)) / 2);
	background: var(--secondary-bg-color);
	background: var(--main-bg-gradient);
	z-index: 100;
	container-type: inline-size;
	container-name: playback-bar;
}

.playback-bar.inline-mode {
	display: flex;
	align-items: center;
  	user-select: none;
}

.playback-bar:hover {
	background: var(--secondary-bg-color-hover);
}

.progress-indicator {
	width: 98%;
	margin-left: 1%;
	height: var(--progress-indicator-height);
}

.progress-indicator.inline-mode {
	flex: 1;
}

.progress-indicator-timer {
	position: absolute;
	top:1px;
	color: var(--main-fg-color);
	font-size: 10px;
	line-height: 11px;
	padding-left: 11px;
	pointer-events: none;
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	z-index: 1;
}

.progress-indicator-timer.left-side {
	left: 0px;
}

.progress-indicator-timer.right-side {
	right: 0px;
}

.playback-bar .button-plugins {
	height: var(--button-fixed-height);
}

.playback-bar .button-plugins.left-side {
	float: left;
}

.playback-bar .button-plugins.right-side {
	float: right;
}

.playback-bar .button-plugins .button-plugin-container {
	display: inline;
}

.playback-bar .button-plugins .button-plugin-container button {
	height: var(--button-fixed-height);
	background: none;
	border: none;
	float: left;
	align-items: center;
	align-items: center;
    justify-content: center;
}

.playback-bar .button-plugins .button-plugin-container button.dynamic-width div.interactive-button-content {
	display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-direction: row;
}

.playback-bar .button-plugins .button-plugin-container button.fixed-width {
	width: var(--button-fixed-width);
}

.playback-bar .button-plugins button:hover {
	background-color: var(--highlight-bg-color-hover);
}

.playback-bar .button-plugins button:active {
	background-color: var(--secondary-bg-color-hover);
}

.playback-bar .button-plugins button.dynamic-width span {
	margin-top: 0px;
	color: var(--main-fg-color);
	padding-left: 3px;
	padding-right: 3px;
}

.playback-bar .button-plugins button i {
	background-size: 50% 50%;
	width: var(--button-icon-size);
	display: block;
	background-repeat: no-repeat;
	background-position: 3px 7px;
	margin-left: auto;
	margin-right: auto;
}

/* non-interactive buttons **/
.playback-bar .button-plugins .button-plugin-container div.non-interactive {
	height: var(--button-fixed-height);
	background: none;
	border: none;
	float: left;
	box-sizing: border-box;
	display: flex;
    align-items: center;
    justify-content: center;
	pointer-events: none;
}

.playback-bar .button-plugins .button-plugin-container div.dynamic-width div.non-interactive-button-content {
	display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-direction: row;
}

.playback-bar .button-plugins .button-plugin-container div.non-interactive.fixed-width {
	width: var(--button-fixed-width);
}

.playback-bar .button-plugins div.non-interactive i {
	background-size: 50% 50%;
	width: var(--button-icon-size);
	display: block;
	background-repeat: no-repeat;
	background-position: 3px 7px;
	margin-left: auto;
	margin-right: auto;
}

.playback-bar .button-plugins div.non-interactive span {
	display: block;
	text-align: center;
	margin-top: -23px;
}

.playback-bar .button-plugins div.no-icon span {
	line-height: var(--button-fixed-height);
    margin-top: 0px;
	color: var(--main-fg-color);
}

.playback-bar .button-plugins div.dynamic-width span {
	margin-top: 0px;
	color: var(--main-fg-color);
	padding-left: 3px;
	padding-right: 3px;
}

.playback-bar .button-plugins .button-plugin-container div.non-interactive {
	padding: 2px 6px 3px 6px;
}
.video-container .button-plugins .button-plugin-container div.non-interactive {
	padding: 2px 6px 3px 6px;
}

.playback-bar .button-plugins div.non-interactive i svg {
	width: 100%;
    height: 100%;
    fill: var(--main-fg-color);
	color: var(--main-fg-color);
}


/* Fix default iPad button padding */
.playback-bar .button-plugins .button-plugin-container button {
	padding: 0px 6px 0px 6px;
}
.video-container .button-plugins .button-plugin-container button {
	padding: 0px 6px 0px 6px;
}

.button-plugins span.button-title {
    display: block;
}

.button-plugins span.button-title.button-title-small {
	margin-top: -13px;
    font-size: 8px;
}

.button-plugins span.button-title.button-title-medium {
	margin-top: -14px;
    font-size: 10px;
}

.button-plugins span.button-title.button-title-large {
	margin-top: -16px;
    font-size: 12px;
}

.button-plugins span.button-title:empty {
	margin-top: 0 !important;
}


.playback-bar .button-plugins button i svg {
	width: 100%;
    height: 100%;
    fill: var(--main-fg-color);
	color: var(--main-fg-color);
}

.playback-bar .button-plugin-side-area {
	display: inline;
	color: var(--main-fg-color);
	height: 40px;
	line-height: 40px;
}

.playback-bar .timer-container {
	height: 40px;
	line-height: 40px;
	display: none;
}

.playback-bar .timer-container.left-side {
	float: left;
	display: block;
}

.playback-bar .timer-container.right-side {
	float: right;
	display: block;
}

.progress-indicator {
	position: relative;
}

.progress-indicator canvas {
	position: absolute;
	left: 0px;
	top: 0px;
	pointer-events: none;
	opacity: 0.5;
	width: 100%;
}

.playback-bar:hover .progress-indicator canvas {
	opacity: 1;
}

.progress-indicator .progress-indicator-container {
	position: absolute;
	left: 0px;
	top: 0px;
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
}

.progress-indicator-container .progress-indicator-content {
	height: 10px;
	background-color: var(--highlight-bg-color-hover);
	opacity: 0.8;
	pointer-events: none;
}

.playback-bar:hover .progress-indicator-container .progress-indicator-content {
	background-color: var(--highlight-bg-color-hover);
}

.progress-indicator-remaining {
	display: block;
	width: 100%;
	background-color: rgb(139, 139, 139);
	height: 10px;
	position: absolute;
	z-index: -1;
	opacity: 0.4;
}

.progress-indicator-handler {
	display: block;
	width: var(--progress-indicator-handler-size);
	height: var(--progress-indicator-handler-size);
	margin-left: -10px;
	background-color: var(--highlight-bg-color-hover);
	border-radius: 10px;
	z-index: 1;
}

.frame-thumbnail {
	background-color: var(--secondary-bg-color-hover);
	min-width: 100px;
	min-height: 100px;
	box-shadow: 0px 0px 5px 0px var(--main-bg-color);
	z-index: 10000;
	pointer-events: none;
}

.frame-thumbnail .thumbnail-image {
	pointer-events: none;
}

.timer-container .progress-indicator-timer {
	position: static;
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
}


@media (max-width: 500px) {
	.frame-thumbnail .thumbnail-image {
		width: 130px;
		pointer-events: none;
	}
}

@media (max-width: 750px) {
	.frame-thumbnail .thumbnail-image {
		width: 230px;
		pointer-events: none;
	}
}

@media (min-width: 750px) {
	.frame-thumbnail .thumbnail-image {
		width: 330px;
		pointer-events: none;
	}
}

.frame-thumbnail .thumbnail-time {
	pointer-events: none;
	font-size: 12px;
	line-height: 12px;
	display: block;
	height: 12px;
	color: var(--main-fg-color);
	text-align: center;
	margin: 0;
	padding: 1;
}

@container player-container (max-width: 700px) {
	.playback-bar {
		min-height: var(--playback-bar-height-sm);
	}
}

@container playback-bar (max-width: 700px) {

	.playback-bar .button-plugins button i {
		width: var(--button-icon-size-sm);
	}

	.playback-bar .button-plugins {
		height: var(--button-fixed-height-sm);
	}

	.playback-bar .button-plugins .button-plugin-container button {
		height: var(--button-fixed-height-sm);
	}

	.playback-bar .button-plugins .button-plugin-container button.fixed-width {
		width: var(--button-fixed-width-sm);
	}

	.playback-bar .button-plugins .button-plugin-container div.non-interactive {
		height: var(--button-fixed-height-sm);
	}

	.playback-bar .button-plugins .button-plugin-container div.non-interactive.fixed-width {
		width: var(--button-fixed-width-sm);
	}

	.playback-bar .button-plugins div.non-interactive i {
		width: var(--button-icon-size-sm);
	}

	.playback-bar .button-plugins div.no-icon span {
		line-height: var(--button-fixed-height-sm);
	}
}