stash/ui/v2.5/src/hooks/Lightbox/lightbox.scss
2025-10-25 20:22:22 -07:00

228 lines
3.3 KiB
SCSS

.Lightbox {
background-color: rgba(20, 20, 20, 0.8);
bottom: 0;
display: flex;
flex-direction: column;
left: 0;
position: fixed;
right: 0;
top: 0;
z-index: 1040;
&-header {
align-items: center;
display: flex;
flex-shrink: 0;
height: 4rem;
.fa-icon {
path {
fill: white;
}
opacity: 0.4;
&:hover {
opacity: 1;
}
}
&-left-spacer {
display: flex;
flex: 1;
justify-content: center;
}
&-chapters {
max-height: 90%;
overflow: auto;
}
&-indicator {
display: flex;
flex: 1;
flex-direction: column;
margin-right: auto;
text-align: center;
}
&-options {
display: flex;
flex-direction: column;
margin-left: 100px;
text-align: left;
&-icon {
display: inline-block;
}
&-inline {
display: none;
}
}
&-right {
display: flex;
flex: 1;
justify-content: flex-end;
}
.fa-icon {
height: 1.5rem;
opacity: 1;
width: 1.5rem;
}
}
&-footer {
align-items: center;
display: flex;
flex-shrink: 0;
height: 4.5rem;
& > div {
flex: 1;
&:nth-child(2) {
overflow-wrap: anywhere;
text-align: center;
}
}
.rating-stars {
display: flex;
flex-wrap: nowrap;
padding-left: 0.38rem;
}
.rating-number .text-input {
width: auto;
}
&-left {
display: flex;
flex-direction: column;
justify-content: start;
padding-left: 1em;
}
&-center {
display: flex;
flex-direction: column;
justify-content: center;
padding-left: 1em;
text-align: center;
}
a {
color: $text-color;
text-decoration: none;
.fa-icon {
margin-right: 0.5rem;
}
&.image-link {
font-weight: bold;
}
}
}
&-display {
display: flex;
height: 100%;
justify-content: space-between;
position: relative;
}
&-carousel {
display: flex;
height: 100%;
position: absolute;
transition: left 400ms;
&-instant {
transition-duration: 0ms;
}
&-swipe {
transition-duration: 200ms;
transition-timing-function: ease-out;
}
&-image-container {
content-visibility: auto;
width: 100vw;
}
&-image {
height: 100%;
width: 100%;
img {
object-fit: contain;
}
&-pan {
img {
cursor: pointer;
}
}
}
}
&-navzone {
cursor: pointer;
width: 50%;
}
&-navbutton {
z-index: 1045;
.fa-icon {
height: 4rem;
opacity: 0.4;
width: 4rem;
path {
fill: white;
}
&:hover {
opacity: 1;
}
}
&:focus {
box-shadow: none;
}
&:hover {
filter: drop-shadow(2px 2px 2px black);
}
}
&-nav {
display: flex;
flex-direction: row;
flex-shrink: 0;
height: 10rem;
margin: 0 auto 2rem 0;
padding: 0 10rem;
position: relative;
transition: left 400ms;
@media (max-height: 800px) {
display: none;
}
&-selected {
box-shadow: 0 0 0 6px white;
}
&-image {
cursor: pointer;
height: 100%;
margin-right: 1rem;
}
}
}