@tindtechnologies/universalviewer
Version:
The Universal Viewer is a community-developed open source project on a mission to help you share your 📚📜📰📽️📻🗿 with the 🌎
455 lines (369 loc) • 8.79 kB
text/less
.uv {
.overlay {
.middle {
.content {
.heading {
color: #000;
font-size: 18px;
font-weight: bold;
margin: 15px 0 0;
padding: 0 0 10px;
}
}
}
color: @text-secondary-color;
&.share {
width: 280px;
padding: 0 0 0 8px;
.iiif-section {
display: grid;
grid-template-columns: auto 1fr;
align-items: center;
gap: 1em;
margin-block: 1.5em;
}
.customSize {
overflow: hidden;
margin-block: 0.5em;
.size {
padding: 0 @padding-small-horizontal 0 0;
}
.x {
padding: 0 @padding-small-horizontal;
}
select {
height: 25px;
min-width: 80px;
padding: 4px;
font-size: 11px;
}
input {
display: inline-block;
width: 50px;
height: 21px;
font-size: 11px;
}
}
.imageBtn {
display: block;
background-position: center center;
background-repeat: no-repeat;
&.iiif {
width: 30px;
height: 30px;
background-image: data-uri(
"../../../modules/uv-shared-module/img/iiif-black.webp"
);
background-size: contain;
}
}
}
&.moreInfo {
width: 260px;
padding: 0 0 0 8px;
.content {
.iiif-metadata-component {
height: 200px;
overflow: auto;
.items {
padding-left: 0;
.item .value {
color: @text-secondary-color;
}
}
}
}
}
&.download {
width: 260px;
padding: 0 0 0 8px;
.middle {
.content {
.noneAvailable {
padding: @padding-medium-vertical 0 @padding-medium-vertical 0;
}
.pagingNote {
padding: @padding-medium-vertical 0 0 0;
}
> h2:nth-of-type(1) {
padding-top: 0;
}
h2 {
margin: 0;
padding: @padding-medium-vertical 0 @padding-medium-vertical 0;
}
.pages {
margin: 0.5rem 0 1rem;
display: flex;
justify-content: center;
.page {
width: 50px;
height: 70px;
background: @gray-lighter;
position: relative;
cursor: pointer;
&.left {
margin-right: 6px;
}
&.selected {
background: @gray-light;
box-shadow: inset 0 0 10px #5a5a5a;
.label {
color: #fff;
}
}
.label {
position: absolute;
bottom: 0;
width: 46px;
padding-left: 4px;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
}
}
ol.options {
padding: 0;
li {
margin: 0;
padding: 2px 0;
button {
width: 100%;
height: 100%;
padding: 0;
border: none;
background: none;
text-align: left;
color: @brand-primary;
cursor: pointer;
&:hover {
text-decoration: underline;
}
}
}
}
}
.footer {
padding: @padding-large-vertical 0 0 0;
button {
width: 100%;
height: 100%;
padding: 0;
border: none;
background: none;
text-align: left;
color: @brand-primary;
cursor: pointer;
&:hover {
text-decoration: underline;
}
}
}
}
}
&.help {
width: 470px;
height: 250px;
.scroll {
height: 180px;
}
.bottom {
background: none;
}
}
&.settings {
width: 470px;
height: 250px;
.scroll {
height: 180px;
.setting {
margin-bottom: @margin-medium-vertical;
select {
height: 25px;
min-width: 100px;
padding: 4px;
font-size: 11px;
}
input {
margin: 0 @margin-small-horizontal 0 0;
}
label {
margin: 0 @margin-small-horizontal 0 0;
}
}
}
.version {
float: left;
}
.website {
float: right;
}
.bottom {
background: none;
}
}
&.externalContent {
width: 470px;
height: 300px;
.middle {
.content {
width: 470px;
height: 300px;
overflow: hidden;
iframe {
overflow: auto;
border: none;
}
}
}
.bottom {
background: none;
}
}
&.clickthrough {
width: 470px;
height: 250px;
.message {
height: 180px;
&.loading {
.loading(@loader-white-bg);
}
.heading {
border-bottom: none;
font-size: @font-size-base;
}
}
.bottom {
background: none;
}
}
&.login {
width: 470px;
height: 250px;
.message {
height: 180px;
.heading {
border-bottom: none ;
font-size: @font-size-base ;
}
.warning {
display: block;
background-color: @brand-warning;
font-weight: bold;
padding: @padding-medium;
margin-bottom: @margin-medium-vertical;
}
}
.bottom {
background: none;
}
}
&.auth {
width: 470px;
height: 250px;
.message {
height: 180px;
.heading {
border-bottom: none ;
font-size: @font-size-base ;
}
.warning {
display: block;
background-color: @brand-warning;
font-weight: bold;
padding: @padding-medium;
margin-bottom: @margin-medium-vertical;
}
}
.bottom {
background: none;
}
}
&.adjustImage {
width: 330px;
height: 250px;
border: 1px solid black;
label {
margin-top: 10px;
display: block;
}
input[type="range"] {
-webkit-appearance: none;
appearance: none;
background: transparent;
cursor: pointer;
width: 304px;
}
input[type="range"]::-webkit-slider-runnable-track {
background: @brand-secondary;
height: 5px;
}
input[type="range"]::-moz-range-track {
background: @brand-secondary;
height: 5px;
}
input[type="range"]::-webkit-slider-thumb {
-webkit-appearance: none;
appearance: none;
margin-top: -6px;
background-color: @brand-secondary;
height: 16px;
width: 16px;
border-radius: 50%;
}
input[type="range"]::-moz-range-thumb {
border: none;
border-radius: 50%;
background-color: @brand-secondary;
height: 16px;
width: 16px;
}
input[type="range"]:focus {
outline: none;
}
input[type="range"]:focus::-webkit-slider-thumb {
border: 1px dotted #053a5f;
outline: 1px dotted #053a5f;
outline-offset: 2px;
}
input[type="range"]:focus::-moz-range-thumb {
border: 1px dotted #053a5f;
outline: 1px dotted #053a5f;
outline-offset: 2px;
}
.rememberContainer {
margin-top: 10px;
label {
display: inline-block;
margin-left: 5px;
}
}
.bottom {
background: none;
}
}
}
.btn.close {
/* Equivalent to Tailwind's px-4 py-2 */
padding: 0.5rem 1rem;
/* bg-black */
background-color: black;
/* text-white */
color: white;
/* Prevent text from wrapping */
white-space: nowrap;
/* Remove default outline on focus */
outline: none;
}
/* Focus state styles */
.btn.close:focus {
outline: none;
/* Darker blue (ring-blue-700 equivalent) */
/* Equivalent to ring-offset-2 (creates an offset ring) */
box-shadow:
0 0 0 4px rgb(37 99 235 / 100%),
0 0 0 6px white;
}
}
@import "mobile";