483 lines
9.7 KiB
CSS
483 lines
9.7 KiB
CSS
/* Material icons polyfills */
|
|
|
|
.material-icons {
|
|
height: 1em;
|
|
font-weight: normal;
|
|
font-style: normal;
|
|
font-size: 24px;
|
|
display: inline-block;
|
|
line-height: 1;
|
|
text-transform: none;
|
|
letter-spacing: normal;
|
|
word-wrap: normal;
|
|
white-space: nowrap;
|
|
direction: inherit;
|
|
-webkit-font-smoothing: antialiased;
|
|
text-rendering: optimizeLegibility;
|
|
-moz-osx-font-smoothing: grayscale;
|
|
font-feature-settings: "liga";
|
|
}
|
|
|
|
.material-icons.home {
|
|
content: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iMjRweCIgdmlld0JveD0iMCAwIDI0IDI0IiB3aWR0aD0iMjRweCIgZmlsbD0iI0ZGRkZGRiI+PHBhdGggZD0iTTAgMGgyNHYyNEgweiIgZmlsbD0ibm9uZSIvPjxwYXRoIGQ9Ik0xMCAyMHYtNmg0djZoNXYtOGgzTDEyIDMgMiAxMmgzdjh6Ii8+PC9zdmc+");
|
|
}
|
|
|
|
.material-icons.add {
|
|
content: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iMjRweCIgdmlld0JveD0iMCAwIDI0IDI0IiB3aWR0aD0iMjRweCIgZmlsbD0iI0ZGRkZGRiI+PHBhdGggZD0iTTAgMGgyNHYyNEgweiIgZmlsbD0ibm9uZSIvPjxwYXRoIGQ9Ik0xOSAxM2gtNnY2aC0ydi02SDV2LTJoNlY1aDJ2Nmg2djJ6Ii8+PC9zdmc+");
|
|
}
|
|
|
|
.material-icons.delete {
|
|
content: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iMjRweCIgdmlld0JveD0iMCAwIDI0IDI0IiB3aWR0aD0iMjRweCIgZmlsbD0iI0ZGRkZGRiI+PHBhdGggZD0iTTAgMGgyNHYyNEgweiIgZmlsbD0ibm9uZSIvPjxwYXRoIGQ9Ik02IDE5YzAgMS4xLjkgMiAyIDJoOGMxLjEgMCAyLS45IDItMlY3SDZ2MTJ6TTE5IDRoLTMuNWwtMS0xaC01bC0xIDFINXYyaDE0VjR6Ii8+PC9zdmc+");
|
|
}
|
|
|
|
/*
|
|
theme.css
|
|
*/
|
|
.button-delete {
|
|
background: rgb(247, 0, 0);
|
|
color: rgba(255, 255, 255, 0.87);
|
|
}
|
|
|
|
.button-delete:disabled {
|
|
background: rgb(105, 0, 0);
|
|
color: rgba(127, 127, 127, 0.87);
|
|
cursor: not-allowed;
|
|
pointer-events: none;
|
|
}
|
|
|
|
/*
|
|
Emby Button
|
|
*/
|
|
|
|
.emby-button {
|
|
position: relative;
|
|
display: inline-flex;
|
|
align-items: center;
|
|
box-sizing: border-box;
|
|
margin: 0.3em;
|
|
text-align: center;
|
|
font-size: inherit;
|
|
font-family: inherit;
|
|
color: inherit;
|
|
|
|
/* These are getting an outline in opera tv browsers, which run chrome 30 */
|
|
outline: none !important;
|
|
outline-width: 0;
|
|
-moz-user-select: none;
|
|
-ms-user-select: none;
|
|
-webkit-user-select: none;
|
|
user-select: none;
|
|
cursor: pointer;
|
|
z-index: 0;
|
|
padding: 0.9em 1em;
|
|
vertical-align: middle;
|
|
border: 0;
|
|
border-radius: 0.2em;
|
|
font-weight: 600;
|
|
|
|
/* Disable webkit tap highlighting */
|
|
-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
|
|
text-decoration: none;
|
|
|
|
/* Not crazy about this but it normalizes heights between anchors and buttons */
|
|
line-height: 1.35;
|
|
transform-origin: center;
|
|
transition: 0.2s;
|
|
}
|
|
|
|
.emby-button.show-focus:focus {
|
|
transform: scale(1.2);
|
|
z-index: 1;
|
|
}
|
|
|
|
.emby-button::-moz-focus-inner {
|
|
border: 0;
|
|
}
|
|
|
|
.button-flat {
|
|
background: transparent;
|
|
}
|
|
|
|
.button-link {
|
|
background: transparent;
|
|
cursor: pointer;
|
|
margin: 0;
|
|
padding: 0;
|
|
vertical-align: initial;
|
|
}
|
|
|
|
.button-link:hover {
|
|
text-decoration: underline;
|
|
}
|
|
|
|
.emby-button > .material-icons {
|
|
/* For non-fab buttons that have icons */
|
|
font-size: 1.36em;
|
|
}
|
|
|
|
.button-link > .material-icons {
|
|
font-size: 1em;
|
|
}
|
|
|
|
.fab {
|
|
display: inline-flex;
|
|
border-radius: 50%;
|
|
padding: 0.6em;
|
|
box-sizing: border-box;
|
|
align-items: center;
|
|
justify-content: center;
|
|
text-align: center;
|
|
}
|
|
|
|
.emby-button.block {
|
|
display: block;
|
|
align-items: center;
|
|
justify-content: center;
|
|
margin: 0.25em 0;
|
|
width: 100%;
|
|
}
|
|
|
|
.paper-icon-button-light {
|
|
position: relative;
|
|
display: inline-flex;
|
|
align-items: center;
|
|
box-sizing: border-box;
|
|
margin: 0 0.29em;
|
|
background: transparent;
|
|
text-align: center;
|
|
font-size: inherit;
|
|
font-family: inherit;
|
|
color: inherit;
|
|
-moz-user-select: none;
|
|
-ms-user-select: none;
|
|
-webkit-user-select: none;
|
|
user-select: none;
|
|
cursor: pointer;
|
|
z-index: 0;
|
|
min-width: initial;
|
|
min-height: initial;
|
|
width: auto;
|
|
height: auto;
|
|
padding: 0.556em;
|
|
vertical-align: middle;
|
|
border: 0;
|
|
|
|
/* These are getting an outline in opera tv browsers, which run chrome 30 */
|
|
outline: none !important;
|
|
overflow: hidden;
|
|
border-radius: 50%;
|
|
|
|
/* Disable webkit tap highlighting */
|
|
-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
|
|
justify-content: center;
|
|
transform-origin: center;
|
|
transition: 0.2s;
|
|
}
|
|
|
|
.paper-icon-button-light.show-focus:focus {
|
|
transform: scale(1.3);
|
|
z-index: 1;
|
|
}
|
|
|
|
.paper-icon-button-light::-moz-focus-inner {
|
|
border: 0;
|
|
}
|
|
|
|
.paper-icon-button-light:disabled {
|
|
opacity: 0.3;
|
|
cursor: default;
|
|
}
|
|
|
|
.paper-icon-button-light > .material-icons {
|
|
font-size: 1.66956521739130434em;
|
|
|
|
/* Make sure its on top of the ripple */
|
|
position: relative;
|
|
z-index: 1;
|
|
vertical-align: middle;
|
|
}
|
|
|
|
.paper-icon-button-light > div {
|
|
max-height: 100%;
|
|
transform: scale(1.8);
|
|
position: relative;
|
|
z-index: 1;
|
|
vertical-align: middle;
|
|
display: inline;
|
|
margin: 0 auto;
|
|
}
|
|
|
|
.emby-button-foreground {
|
|
position: relative;
|
|
z-index: 1;
|
|
}
|
|
|
|
.btnFilterWithBubble {
|
|
position: relative;
|
|
}
|
|
|
|
.filterButtonBubble {
|
|
color: #fff;
|
|
position: absolute;
|
|
top: 0;
|
|
right: 0;
|
|
width: 1.6em;
|
|
height: 1.6em;
|
|
z-index: 100000000;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
font-size: 82%;
|
|
border-radius: 100em;
|
|
box-shadow:
|
|
0 4px 5px 0 rgba(0, 0, 0, 0.14),
|
|
0 1px 10px 0 rgba(0, 0, 0, 0.12),
|
|
0 2px 4px -1px rgba(0, 0, 0, 0.2);
|
|
background: #03a9f4;
|
|
font-weight: bold;
|
|
}
|
|
|
|
/* fonts.scss */
|
|
|
|
html {
|
|
font-family: "Noto Sans", "Noto Sans HK", "Noto Sans JP", "Noto Sans KR",
|
|
"Noto Sans SC", "Noto Sans TC", sans-serif;
|
|
text-size-adjust: 100%;
|
|
-webkit-font-smoothing: antialiased;
|
|
text-rendering: optimizeLegibility;
|
|
}
|
|
|
|
html[lang|="ja"] {
|
|
font-family: "Noto Sans", "Noto Sans JP", "Noto Sans HK", "Noto Sans KR",
|
|
"Noto Sans SC", "Noto Sans TC", sans-serif;
|
|
}
|
|
|
|
html[lang|="ko"] {
|
|
font-family: "Noto Sans", "Noto Sans KR", "Noto Sans HK", "Noto Sans JP",
|
|
"Noto Sans SC", "Noto Sans TC", sans-serif;
|
|
}
|
|
|
|
html[lang|="zh-CN"] {
|
|
font-family: "Noto Sans", "Noto Sans SC", "Noto Sans HK", "Noto Sans JP",
|
|
"Noto Sans KR", "Noto Sans TC", sans-serif;
|
|
}
|
|
|
|
html[lang|="zh-TW"] {
|
|
font-family: "Noto Sans", "Noto Sans TC", "Noto Sans HK", "Noto Sans JP",
|
|
"Noto Sans KR", "Noto Sans SC", sans-serif;
|
|
}
|
|
|
|
html[lang|="zh-HK"] {
|
|
font-family: "Noto Sans", "Noto Sans HK", "Noto Sans JP", "Noto Sans KR",
|
|
"Noto Sans SC", "Noto Sans TC", sans-serif;
|
|
}
|
|
|
|
.layout-tv {
|
|
/* Per WebOS and Tizen guidelines, fonts must be 20px minimum.
|
|
This takes the 16px baseline and multiplies it by 1.25 to get 20px. */
|
|
font-size: 125%;
|
|
}
|
|
|
|
.layout-mobile {
|
|
font-size: 90%;
|
|
}
|
|
|
|
/* site.scss */
|
|
|
|
html {
|
|
line-height: 1.35;
|
|
}
|
|
|
|
body {
|
|
overflow-x: hidden;
|
|
background-color: transparent !important;
|
|
-webkit-font-smoothing: antialiased;
|
|
}
|
|
|
|
.clipForScreenReader {
|
|
clip: rect(1px, 1px, 1px, 1px);
|
|
clip-path: inset(50%);
|
|
height: 1px;
|
|
width: 1px;
|
|
margin: -1px;
|
|
overflow: hidden;
|
|
padding: 0;
|
|
position: absolute;
|
|
}
|
|
|
|
.material-icons {
|
|
/* Fix font ligatures on older WebOS versions */
|
|
font-feature-settings: "liga";
|
|
}
|
|
|
|
.backgroundContainer {
|
|
position: fixed;
|
|
top: 0;
|
|
left: 0;
|
|
right: 0;
|
|
bottom: 0;
|
|
contain: strict;
|
|
}
|
|
|
|
.layout-mobile,
|
|
.layout-tv {
|
|
-webkit-touch-callout: none;
|
|
user-select: none;
|
|
}
|
|
|
|
.mainAnimatedPage {
|
|
contain: style size !important;
|
|
}
|
|
|
|
.pageContainer {
|
|
overflow-x: visible !important;
|
|
}
|
|
|
|
.bodyWithPopupOpen {
|
|
overflow-y: hidden !important;
|
|
}
|
|
|
|
div[data-role="page"] {
|
|
outline: 0;
|
|
}
|
|
|
|
.pageTitle {
|
|
margin-top: 0;
|
|
font-family: inherit;
|
|
}
|
|
|
|
.fieldDescription {
|
|
padding-left: 0.15em;
|
|
font-weight: 400;
|
|
white-space: normal !important;
|
|
}
|
|
|
|
.fieldDescription + .fieldDescription {
|
|
margin-top: 0.3em;
|
|
}
|
|
|
|
.content-primary,
|
|
.padded-bottom-page,
|
|
.page,
|
|
.pageWithAbsoluteTabs .pageTabContent {
|
|
/* provides room for the music controls */
|
|
padding-bottom: 5em !important;
|
|
}
|
|
|
|
.readOnlyContent {
|
|
@media all and (min-width: 50em) {
|
|
max-width: 54em;
|
|
}
|
|
}
|
|
|
|
form {
|
|
@media all and (min-width: 50em) {
|
|
max-width: 54em;
|
|
}
|
|
}
|
|
|
|
.headerHelpButton {
|
|
margin-left: 1.25em !important;
|
|
padding-bottom: 0.4em !important;
|
|
padding-top: 0.4em !important;
|
|
}
|
|
|
|
.mediaInfoContent {
|
|
margin-left: auto;
|
|
margin-right: auto;
|
|
width: 85%;
|
|
}
|
|
|
|
.headroom {
|
|
will-change: transform;
|
|
transition: transform 200ms linear;
|
|
}
|
|
|
|
.drawerContent {
|
|
/* make sure the bottom of the drawer is visible when music is playing */
|
|
padding-bottom: 4em;
|
|
}
|
|
|
|
.force-scroll {
|
|
overflow-y: scroll;
|
|
}
|
|
|
|
.hide-scroll {
|
|
overflow-y: hidden;
|
|
}
|
|
|
|
.w-100 {
|
|
width: 100%;
|
|
}
|
|
|
|
.margin-auto-x {
|
|
margin-left: auto;
|
|
margin-right: auto;
|
|
}
|
|
|
|
.margin-auto-y {
|
|
margin-top: auto;
|
|
margin-bottom: auto;
|
|
}
|
|
|
|
/* Fix checkboxes */
|
|
/* Customize the label (the container) */
|
|
*/ .checkbox-wrapper {
|
|
position: relative;
|
|
}
|
|
|
|
.checkbox-wrapper [type="checkbox"] {
|
|
/*display: none;*/
|
|
position: absolute;
|
|
top: 0px;
|
|
left: 0px;
|
|
height: 20px;
|
|
width: 20px;
|
|
-webkit-appearance: none;
|
|
}
|
|
|
|
.checkbox-label {
|
|
display: flex;
|
|
position: relative;
|
|
font-size: 20px;
|
|
font-weight: 400;
|
|
align-items: center;
|
|
justify-content: flex-start;
|
|
margin-bottom: 20px;
|
|
}
|
|
|
|
.checkbox-label:before,
|
|
.checkbox-label:after {
|
|
pointer-events: none;
|
|
}
|
|
|
|
.checkbox-label:before {
|
|
display: flex;
|
|
content: " ";
|
|
height: 20px;
|
|
width: 20px;
|
|
border: 0.14em solid white;
|
|
border-radius: 0.14em;
|
|
/* background: #fff; */
|
|
|
|
margin-right: 10px;
|
|
}
|
|
|
|
.checkbox-label:after {
|
|
position: absolute;
|
|
top: 0;
|
|
left: 0;
|
|
display: flex;
|
|
content: " ";
|
|
height: 20px;
|
|
width: 20px;
|
|
border: 0.14em solid white;
|
|
border-radius: 0.14em;
|
|
background: none;
|
|
}
|
|
|
|
.checkbox-wrapper input[type="checkbox"]:checked + .checkbox-label:after {
|
|
background-color: #2196f3;
|
|
content: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iMjRweCIgdmlld0JveD0iMCAwIDI0IDI0IiB3aWR0aD0iMjRweCIgZmlsbD0iI0ZGRkZGRiI+PHBhdGggZD0iTTAgMGgyNHYyNEgweiIgZmlsbD0ibm9uZSIvPjxwYXRoIGQ9Ik05IDE2LjJMNC44IDEybC0xLjQgMS40TDkgMTkgMjEgN2wtMS40LTEuNEw5IDE2LjJ6Ii8+PC9zdmc+");
|
|
}
|