paella-core
Version:
Multistream HTML video player
240 lines (199 loc) • 5.12 kB
CSS
:root {
--video-container-padding: 0px;
--video-container-gap: 10px;
}
.video-container {
background-color: var(--video-container-background-color);
width: 100%;
height: 100%;
display: flex;
align-items: center;
justify-content: center;
position: absolute;
top: 50%;
transform: translateY(-50%);
}
.video-container.over-playback-bar {
height: calc(100% - var(--playback-bar-height) - 30px);
top: 0px;
transform: none;
}
.base-video-rect {
background-color: var(--base-video-rect-background-color);
position: relative;
}
.base-video-rect.dynamic {
display: flex;
background-color: transparent;
gap: var(--video-container-gap);
padding: var(--video-container-padding);
box-sizing: border-box;
width: 100%;
height: 100%;
}
.base-video-rect.dynamic.portrait {
flex-wrap: wrap;
align-items: center;
justify-content: center;
}
.base-video-rect.dynamic.landscape {
justify-content: space-around;
}
.base-video-rect.dynamic {
align-items: center;
}
.base-video-rect.dynamic.portrait.align-left {
justify-content: start;
}
.base-video-rect.dynamic.portrait.align-right {
justify-content: right;
}
.base-video-rect.dynamic .landscape-container {
display: flex;
width: 100%;
justify-content: space-around;
}
.base-video-rect.dynamic.align-bottom .landscape-container {
align-items: flex-end;
}
.base-video-rect.dynamic.align-top .landscape-container {
align-items: flex-start;
}
.base-video-rect.dynamic.align-center .landscape-container {
align-items: center;
}
.video-container .button-plugins {
position: absolute;
top: 10px;
height: 40px;
z-index: 100;
}
.video-container .button-plugins.left-side {
left: 10px;
}
.video-container .button-plugins.right-side {
right: 10px;
}
.video-container .user-area {
position: absolute;
width: 100%;
height: 100%;
top: 0px;
left: 0px;
pointer-events: none;
}
.video-container .button-plugins .button-plugin-container {
display: inline;
}
.video-container .button-plugins .button-plugin-container button {
height: var(--button-fixed-height);
display: block;
background-color: var(--main-bg-color);
border-radius: 6px;
border: none;
float: left;
margin-left: 2px;
margin-right: 2px;
}
.video-container .button-plugins .button-plugin-container button.fixed-width {
width: var(--button-fixed-width);
}
.video-container .button-plugins .button-plugin-container button.dynamic-width div.interactive-button-content {
display: flex;
justify-content: flex-start;
align-items: center;
flex-direction: row;
}
.video-container .button-plugins button.dynamic-width span {
margin-top: 0px;
color: var(--main-fg-color);
padding-left: 3px;
padding-right: 3px;
}
.video-container .button-plugins button:hover {
background-color: var(--highlight-bg-color-hover);
}
.video-container .button-plugins button:active {
background-color: var(--main-bg-color-hover);
}
.video-container .button-plugins button i {
background-size: 50% 50%;
width: 20px;
display: block;
background-repeat: no-repeat;
background-position: 3px 7px;
margin-left: 5px;
}
.video-container .button-plugins button i svg {
width: 100%;
height: 100%;
fill: var(--main-fg-color);
color: var(--main-fg-color);
}
/* non-interactive buttons */
.video-container .button-plugins .button-plugin-container div.non-interactive {
height: var(--button-fixed-height);
background-color: transparent;
border-radius: 6px;
border: none;
float: left;
box-sizing: border-box;
display: flex;
align-items: center;
justify-content: center;
pointer-events: none;
}
.video-container .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;
}
.video-container .button-plugins .button-plugin-container div.non-interactive.fixed-width {
width: var(--button-fixed-width);
}
.video-container .button-plugins div i {
background-size: 50% 50%;
width: 20px;
display: block;
background-repeat: no-repeat;
background-position: 3px 7px;
margin-left: auto;
margin-right: auto;
}
.video-container .button-plugins div i svg {
width: 100%;
height: 100%;
fill: var(--main-fg-color);
color: var(--main-fg-color);
}
.video-container .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;
}
.video-container .button-plugins div.non-interactive span {
display: block;
text-align: center;
}
.video-container .button-plugins div.no-icon span {
line-height: var(--button-fixed-height);
margin-top: 0px;
color: var(--main-fg-color);
}
.video-container .button-plugins div.dynamic-width span {
margin-top: 0px;
color: var(--main-fg-color);
padding-left: 3px;
padding-right: 3px;
}
.video-container .button-plugin-side-area {
display: inline;
color: var(--main-fg-color);
height: 40px;
line-height: 40px;
}
.video-container .landscape-container {
gap: 7px;
}