2026-04-18 22:38:12 +02:00
|
|
|
@media (orientation: landscape) {
|
|
|
|
|
:root {
|
|
|
|
|
--logo-width: clamp(34.08em, 40vw, 56.89em);
|
|
|
|
|
--logo-height: clamp(15.15em, 15vw, 25.28em);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@media (orientation: portrait) {
|
|
|
|
|
:root {
|
|
|
|
|
--logo-width: clamp(0px, 90.78vw, 56.89em);
|
|
|
|
|
--logo-height: clamp(0px, 34vw, 56.89em);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* ============================== */
|
2026-04-24 20:09:48 +02:00
|
|
|
/* Global
|
2026-04-18 22:38:12 +02:00
|
|
|
/* ============================== */
|
2026-04-24 20:09:48 +02:00
|
|
|
/* Make header translucent */
|
2026-04-18 22:38:12 +02:00
|
|
|
.skinHeader {
|
2026-04-26 01:42:21 +02:00
|
|
|
margin-bottom: -3%;
|
|
|
|
|
padding-bottom: 3%;
|
2026-04-18 22:38:12 +02:00
|
|
|
backdrop-filter: none !important;
|
2026-04-26 01:42:21 +02:00
|
|
|
background-color: rgba(0, 0, 0, 0);
|
|
|
|
|
background-image: url("https://static.zomerkoningin.nl/andromeda/images/milkyway_header_lq.webp");
|
|
|
|
|
background-size: 100%;
|
|
|
|
|
background-position: center bottom;
|
2026-04-18 22:38:12 +02:00
|
|
|
}
|
|
|
|
|
|
2026-04-24 20:09:48 +02:00
|
|
|
/* Add fade-out to scrollable lists */
|
|
|
|
|
div:has(> div > .emby-scroller-container) {
|
|
|
|
|
mask: linear-gradient(90deg, transparent 0, black 12.5%), linear-gradient(270deg, transparent 0, black 12.5%);
|
|
|
|
|
mask-composite: intersect;
|
|
|
|
|
}
|
|
|
|
|
|
2026-04-24 21:35:26 +02:00
|
|
|
/* ============================== */
|
|
|
|
|
/* Homepage
|
|
|
|
|
/* ============================== */
|
|
|
|
|
.layout-desktop .sections > div {
|
|
|
|
|
margin-left: auto;
|
|
|
|
|
margin-right: auto;
|
|
|
|
|
width: 75%;
|
|
|
|
|
padding-left: unset !important;
|
|
|
|
|
padding-right: unset !important;
|
|
|
|
|
}
|
|
|
|
|
|
2026-04-18 22:38:12 +02:00
|
|
|
/* ============================== */
|
2026-04-22 14:54:44 +02:00
|
|
|
/* Media detail page
|
2026-04-18 22:38:12 +02:00
|
|
|
/* ============================== */
|
|
|
|
|
/* Background */
|
|
|
|
|
.layout-desktop .itemBackdrop {
|
|
|
|
|
display: none;
|
|
|
|
|
}
|
|
|
|
|
.layout-mobile .itemBackdrop {
|
|
|
|
|
margin-top: unset;
|
|
|
|
|
|
|
|
|
|
position: fixed;
|
|
|
|
|
top: 0;
|
|
|
|
|
left: 0;
|
|
|
|
|
z-index: -1;
|
|
|
|
|
width: 100%;
|
|
|
|
|
height: 100%;
|
|
|
|
|
}
|
|
|
|
|
.layout-mobile .backgroundContainer {
|
|
|
|
|
background-color: rgba(0, 0, 0, 0.86);
|
|
|
|
|
}
|
|
|
|
|
|
2026-04-22 14:58:33 +02:00
|
|
|
.detailPagePrimaryContainer {
|
2026-04-22 15:58:20 +02:00
|
|
|
background-color: transparent !important;
|
2026-04-22 14:58:33 +02:00
|
|
|
}
|
|
|
|
|
|
2026-04-18 22:38:12 +02:00
|
|
|
/* Logo */
|
|
|
|
|
.layout-desktop .libraryPage.itemDetailPage::before {
|
|
|
|
|
height: calc(30vw - var(--logo-height));
|
|
|
|
|
max-height: 13.35em;
|
|
|
|
|
}
|
|
|
|
|
.layout-mobile .libraryPage.itemDetailPage::before {
|
|
|
|
|
height: 10.3em;
|
|
|
|
|
}
|
2026-04-22 14:54:44 +02:00
|
|
|
.libraryPage.itemDetailPage::before {
|
|
|
|
|
display: block;
|
|
|
|
|
height: calc(30vw - var(--logo-height));
|
|
|
|
|
max-height: 13.35em;
|
|
|
|
|
content: "";
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.layout-mobile .detailLogo {
|
|
|
|
|
display: block;
|
|
|
|
|
}
|
2026-04-18 22:38:12 +02:00
|
|
|
.detailLogo {
|
|
|
|
|
top: unset;
|
|
|
|
|
right: unset;
|
|
|
|
|
|
|
|
|
|
/* Center horizontally */
|
|
|
|
|
position: relative;
|
|
|
|
|
left: 50%;
|
|
|
|
|
transform: translate(-50%, 0);
|
|
|
|
|
|
|
|
|
|
width: var(--logo-width);
|
|
|
|
|
height: var(--logo-height);
|
|
|
|
|
|
|
|
|
|
background-position: bottom;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* Poster */
|
|
|
|
|
.detailImageContainer {
|
|
|
|
|
display: none;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* Detail ribbon */
|
2026-04-22 14:54:44 +02:00
|
|
|
.layout-mobile .infoWrapper {
|
|
|
|
|
padding-left: unset !important;
|
|
|
|
|
}
|
2026-04-18 22:38:12 +02:00
|
|
|
.detailRibbon {
|
|
|
|
|
height: unset !important;
|
|
|
|
|
padding: unset !important;
|
|
|
|
|
|
|
|
|
|
margin-top: 0.5em !important;
|
|
|
|
|
|
|
|
|
|
/* Stack items */
|
|
|
|
|
display: flex;
|
|
|
|
|
flex-direction: column;
|
|
|
|
|
|
|
|
|
|
background: rgba(0,0,0,0) !important;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* Media title */
|
|
|
|
|
.nameContainer h1 {
|
|
|
|
|
/* Position on top of logo to keep link */
|
|
|
|
|
position: absolute;
|
|
|
|
|
top: calc(-1 * (0.50 * 14.4px) - var(--logo-height));
|
|
|
|
|
left: 0;
|
|
|
|
|
right: 0;
|
|
|
|
|
margin-left: auto !important;
|
|
|
|
|
margin-right: auto !important;
|
|
|
|
|
|
|
|
|
|
/* Give it the same size as the logo */
|
|
|
|
|
font-size: unset !important;
|
|
|
|
|
width: var(--logo-width);
|
|
|
|
|
height: var(--logo-height);
|
|
|
|
|
overflow: hidden !important;
|
|
|
|
|
|
|
|
|
|
/* Make it invisible while keeping it clickable */
|
|
|
|
|
opacity: 0;
|
|
|
|
|
|
|
|
|
|
/* Disable select */
|
|
|
|
|
user-select: none;
|
|
|
|
|
}
|
|
|
|
|
.nameContainer h1 > * {
|
|
|
|
|
font-size: var(--logo-height);
|
|
|
|
|
}
|
|
|
|
|
|
2026-04-24 14:23:38 +02:00
|
|
|
/* Season */
|
|
|
|
|
.nameContainer h3.itemName.infoText.subtitle bdi {
|
|
|
|
|
display: flex;
|
|
|
|
|
flex-direction: column;
|
|
|
|
|
place-items: center;
|
|
|
|
|
gap: 1em;
|
|
|
|
|
text-indent: -1ch;
|
|
|
|
|
overflow: hidden;
|
|
|
|
|
font-size: larger;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.nameContainer h3.itemName.infoText.subtitle bdi [data-type="Season"] {
|
|
|
|
|
text-indent: 0;
|
|
|
|
|
font-size: .72em;
|
|
|
|
|
font-weight: normal;
|
|
|
|
|
}
|
|
|
|
|
|
2026-04-18 22:38:12 +02:00
|
|
|
/* Original title */
|
|
|
|
|
.nameContainer h4 {
|
|
|
|
|
text-align: center;
|
|
|
|
|
opacity: 0.5;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* Buttons */
|
|
|
|
|
.layout-mobile .mainDetailButtons {
|
|
|
|
|
padding-left: unset !important;
|
|
|
|
|
}
|
2026-04-22 14:54:44 +02:00
|
|
|
.mainDetailButtons {
|
|
|
|
|
margin-top: 1em;
|
|
|
|
|
}
|
2026-04-18 22:38:12 +02:00
|
|
|
|
|
|
|
|
/* Primary info (e.g. year, rating, etc.) */
|
|
|
|
|
.itemMiscInfo.itemMiscInfo-primary {
|
|
|
|
|
margin-top: 0.5em;
|
|
|
|
|
justify-content: center;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* Media content */
|
|
|
|
|
.layout-desktop .detailPageSecondaryContainer {
|
|
|
|
|
padding-top: 0;
|
|
|
|
|
background: rgba(0,0,0,0);
|
|
|
|
|
}
|
|
|
|
|
.layout-desktop .detailPageContent {
|
|
|
|
|
padding: unset !important;
|
|
|
|
|
|
|
|
|
|
width: 75%;
|
|
|
|
|
margin-left: auto;
|
|
|
|
|
margin-right: auto;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* Disable right padding */
|
|
|
|
|
.layout-desktop .detailPageContent .padded-right {
|
|
|
|
|
padding-right: unset !important;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* Description and info */
|
|
|
|
|
.layout-desktop .detailPagePrimaryContent {
|
|
|
|
|
padding-left: 0;
|
|
|
|
|
padding-right: 0;
|
|
|
|
|
margin-left: auto;
|
|
|
|
|
margin-right: auto;
|
|
|
|
|
width: var(--logo-width);
|
|
|
|
|
text-align: center;
|
|
|
|
|
}
|
|
|
|
|
.layout-desktop .detailSectionContent {
|
|
|
|
|
padding-top: 1em;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* Tables (e.g. audio, subtitles, genres, writers, etc.) */
|
|
|
|
|
.layout-desktop .detailPagePrimaryContent .itemDetailsGroup,
|
|
|
|
|
.layout-desktop .detailPagePrimaryContent .trackSelections {
|
|
|
|
|
margin-left: auto;
|
|
|
|
|
margin-right: auto;
|
|
|
|
|
width: fit-content;
|
|
|
|
|
text-align: left;
|
|
|
|
|
}
|
|
|
|
|
.layout-desktop .detailPagePrimaryContent .itemDetailsGroup .detailsGroupItem,
|
|
|
|
|
.layout-desktop .detailPagePrimaryContent .trackSelections .selectContainer {
|
|
|
|
|
width: fit-content;
|
|
|
|
|
}
|
|
|
|
|
.layout-desktop .detailPagePrimaryContent .itemDetailsGroup .detailsGroupItem .label,
|
|
|
|
|
.layout-desktop .detailPagePrimaryContent .trackSelections .selectContainer label {
|
|
|
|
|
min-width: 6.25em;
|
|
|
|
|
width: fit-content;
|
|
|
|
|
}
|
|
|
|
|
.layout-desktop .detailPagePrimaryContent .itemDetailsGroup .detailsGroupItem .content,
|
|
|
|
|
.layout-desktop .detailPagePrimaryContent .trackSelections .selectContainer select {
|
|
|
|
|
width: fit-content;
|
|
|
|
|
}
|
|
|
|
|
.layout-desktop .detailPagePrimaryContent .trackSelections .selectContainer select {
|
|
|
|
|
padding-left: 0.5em;
|
|
|
|
|
}
|
|
|
|
|
.layout-desktop .detailPagePrimaryContent .trackSelections .selectContainer select:enabled {
|
|
|
|
|
padding-left: 1em !important;
|
|
|
|
|
padding-right: 2em;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* Next Up */
|
2026-04-22 14:54:44 +02:00
|
|
|
.layout-mobile .nextUpSection .nextUpItems .overflowBackdropCard {
|
|
|
|
|
width: 72vw !important;
|
|
|
|
|
max-width: 27.95em !important;
|
|
|
|
|
}
|
2026-04-18 22:38:12 +02:00
|
|
|
.nextUpSection {
|
|
|
|
|
margin-top: 1.8em;
|
|
|
|
|
margin-left: auto;
|
|
|
|
|
margin-right: auto;
|
|
|
|
|
width: unset !important;
|
|
|
|
|
}
|
|
|
|
|
|
2026-04-24 14:42:27 +02:00
|
|
|
/* List of seasons */
|
|
|
|
|
/* Replace margin with gap */
|
2026-04-24 14:35:16 +02:00
|
|
|
.layout-desktop .itemsContainer {
|
|
|
|
|
gap: 1.2em;
|
|
|
|
|
}
|
2026-04-22 19:04:24 +02:00
|
|
|
.layout-desktop .itemsContainer > .card > .cardBox {
|
2026-04-18 22:38:12 +02:00
|
|
|
margin-right: unset !important;
|
|
|
|
|
}
|
|
|
|
|
|
2026-04-24 14:42:27 +02:00
|
|
|
.layout-desktop .itemsContainer.padded-right:not(.padded-left) {
|
|
|
|
|
padding: unset !important; /* Remove right padding if left padding is not present */
|
|
|
|
|
}
|
|
|
|
|
.layout-desktop .itemsContainer.vertical-wrap {
|
|
|
|
|
justify-content: center; /* Only center if wrapping is enabled */
|
|
|
|
|
}
|
|
|
|
|
|
2026-04-22 19:40:02 +02:00
|
|
|
@media (min-width: 87.5em) {
|
|
|
|
|
.overflowPortraitCard, .overflowSquareCard {
|
|
|
|
|
width: 12.5vw !important;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2026-04-18 22:38:12 +02:00
|
|
|
/* Scrollable lists */
|
|
|
|
|
.layout-desktop .detailVerticalSection {
|
|
|
|
|
width: 100%;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* Resize episode view */
|
|
|
|
|
.listItem-content {
|
2026-04-23 17:52:23 +02:00
|
|
|
position: relative;
|
2026-04-18 22:38:12 +02:00
|
|
|
height: 7.73em; /* Set height of container */
|
2026-04-23 17:52:23 +02:00
|
|
|
--poster-margin: .75em;
|
|
|
|
|
--poster-width: 19.5vw;
|
2026-04-18 22:38:12 +02:00
|
|
|
}
|
2026-04-23 17:52:23 +02:00
|
|
|
|
|
|
|
|
/* Resize episode poster */
|
2026-04-18 22:38:12 +02:00
|
|
|
.listItem-content .listItemImage.listItemImage-large {
|
2026-04-23 17:52:23 +02:00
|
|
|
margin-right: var(--poster-margin);
|
|
|
|
|
width: var(--poster-width);
|
2026-04-18 22:38:12 +02:00
|
|
|
height: 100%;
|
2026-04-23 17:52:23 +02:00
|
|
|
background-position: 50%;
|
2026-04-18 22:38:12 +02:00
|
|
|
}
|
2026-04-23 17:52:23 +02:00
|
|
|
|
|
|
|
|
/* Resize episode body */
|
2026-04-18 22:38:12 +02:00
|
|
|
.listItem-content .listItemBody {
|
2026-04-23 17:52:23 +02:00
|
|
|
position: absolute;
|
|
|
|
|
left: calc(var(--poster-width) + var(--poster-margin));
|
2026-04-18 22:38:12 +02:00
|
|
|
height: 100%;
|
2026-04-23 17:52:23 +02:00
|
|
|
padding: 0 .75em;
|
2026-04-18 22:38:12 +02:00
|
|
|
display: flex;
|
|
|
|
|
flex-flow: column;
|
|
|
|
|
}
|
|
|
|
|
.listItem-content .listItemBody .listItemBodyText:not(.listItem-overview) {
|
|
|
|
|
flex-grow: 0;
|
|
|
|
|
flex-shrink: 0;
|
|
|
|
|
flex-basis: auto;
|
|
|
|
|
}
|
|
|
|
|
.listItem-content .listItemBody .listItem-overview {
|
|
|
|
|
flex-grow: 1;
|
|
|
|
|
flex-shrink: 1;
|
|
|
|
|
flex-basis: auto;
|
|
|
|
|
padding-top: .5em;
|
|
|
|
|
}
|
|
|
|
|
|
2026-04-23 17:52:23 +02:00
|
|
|
/* Add fade-out on episode body overflow */
|
2026-04-18 22:38:12 +02:00
|
|
|
.listItem-content .listItemBody .listItem-overview p {
|
|
|
|
|
margin: 0;
|
|
|
|
|
height: 100%;
|
|
|
|
|
|
|
|
|
|
overflow: hidden;
|
|
|
|
|
mask: linear-gradient(to bottom,
|
|
|
|
|
rgba(0,0,0, 1) 0, rgba(0,0,0, 1) 40%,
|
|
|
|
|
rgba(0,0,0, 0) 95%, rgba(0,0,0, 0) 0
|
|
|
|
|
) 100% 50% / 100% 100% repeat-x;
|
|
|
|
|
}
|
|
|
|
|
|
2026-04-23 17:52:23 +02:00
|
|
|
/* Position episode buttons */
|
|
|
|
|
.listItem-content .listViewUserDataButtons {
|
|
|
|
|
position: absolute;
|
|
|
|
|
bottom: 0;
|
|
|
|
|
right: 0;
|
2026-04-23 20:36:32 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* Only show user data buttons on hover */
|
|
|
|
|
.layout-desktop .listItem-content .listViewUserDataButtons {
|
2026-04-23 20:28:25 +02:00
|
|
|
opacity: 0;
|
|
|
|
|
}
|
|
|
|
|
.layout-desktop .listItem:hover .listItem-content .listViewUserDataButtons {
|
|
|
|
|
opacity: 1;
|
2026-04-23 21:32:01 +02:00
|
|
|
transition: .2s ease-out;
|
2026-04-23 17:52:23 +02:00
|
|
|
}
|
|
|
|
|
|
2026-04-23 20:35:57 +02:00
|
|
|
/* Only show play button on hover */
|
|
|
|
|
.layout-desktop .listItemImageButton.itemAction[data-action="resume"] {
|
|
|
|
|
opacity: 0;
|
|
|
|
|
}
|
|
|
|
|
.layout-desktop .listItem:hover .listItemImageButton.itemAction[data-action="resume"] {
|
|
|
|
|
opacity: 1;
|
|
|
|
|
}
|
|
|
|
|
|
2026-04-18 22:38:12 +02:00
|
|
|
/* Floating indicator */
|
|
|
|
|
.innerCardFooter {
|
|
|
|
|
margin: .5em;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.countIndicator {
|
|
|
|
|
background: rgba(0, 164, 220, 0.8);
|
|
|
|
|
box-shadow: none;
|
|
|
|
|
}
|
|
|
|
|
.indicator, .innerCardFooter {
|
|
|
|
|
background: rgba(0,0,0,0.4);
|
|
|
|
|
box-shadow: none;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.mediaSourceIndicator {
|
|
|
|
|
background: rgba(0,0,0,0.4);
|
|
|
|
|
box-shadow: none;
|
|
|
|
|
border-radius: calc(infinity * 1px);
|
|
|
|
|
}
|