@pdftron/webviewer-react-toolkit
Version:
A React component library for integrating with PDFTron WebViewer API.
1,564 lines (1,302 loc) • 31.5 kB
CSS
:root {
--color-theme-primary: #00a5e4;
--color-theme-secondary: #242933;
--color-font-primary: #232229;
--color-font-secondary: #5b5c68;
--color-gray-1: #fff;
--color-gray-2: #f4f4f4;
--color-gray-3: #e7ebee;
--color-gray-4: #ddd;
--color-gray-5: #cfd4da;
--color-blue-gray-1: #dfe2ed;
--color-blue-gray-2: #c3c6d4;
--color-blue-gray-3: #abb0c4;
--color-blue-gray-4: #8b92ab;
--color-blue-gray-5: #6077bf;
--color-blue-gray-6: #415797;
--color-contrast-1: #fafafa;
--color-contrast-2: #f0f0f0;
--color-message-info: #2980b9;
--color-message-success: #27ae60;
--color-message-warning: #e67e22;
--color-message-error: #e74c3c;
--color-message-info-focus-shadow: rgba(41, 128, 185, 0.4);
--color-message-success-focus-shadow: rgba(39, 174, 96, 0.4);
--color-message-warning-focus-shadow: rgba(230, 126, 34, 0.4);
--color-message-error-focus-shadow: rgba(231, 76, 60, 0.4);
--color-background-canvas: #eee;
--color-focus-shadow: rgba(20, 110, 170, 0.4);
--color-overlay-canvas: rgba(0, 0, 0, 0.4);
--font-size-tiny: 9px;
--font-size-small: 11px;
--font-size-default: 13px;
--font-size-medium: 16px;
--font-size-large: 18px;
--font-size-huge: 24px;
--font-weight-normal: 400;
--font-weight-bold: 700;
--padding-tiny: 4px;
--padding-small: 8px;
--padding-medium: 12px;
--padding: 16px;
--padding-large: 24px;
--padding-huge: 32px;
--border-radius-small: 2px;
--border-radius: 4px;
--border-radius-large: 8px;
--box-shadow-1: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);
--box-shadow-2: 0 3px 6px rgba(0, 0, 0, 0.16), 0 3px 6px rgba(0, 0, 0, 0.23);
--box-shadow-3: 0 10px 20px rgba(0, 0, 0, 0.19), 0 6px 6px rgba(0, 0, 0, 0.23);
--z-index-local: 0;
--z-index-raised: 100;
--z-index-dragging: 200;
--z-index-overlay: 300;
--font-family: Lato, Tahoma, sans-serif;
--focus-transition: box-shadow 0.1s cubic-bezier(0.4, 1, 0.75, 0.9)
}
html[data-theme=dark] {
--color-theme-primary: #00a5e4;
--color-theme-secondary: #8fa5c7;
--color-font-primary: #d7daeb;
--color-font-secondary: #989ba3;
--color-gray-1: #4a4a4a;
--color-gray-2: #444;
--color-gray-3: #424242;
--color-gray-4: #3f3f3f;
--color-gray-5: #3a3a3a;
--color-blue-gray-1: #46506d;
--color-blue-gray-2: #525e80;
--color-blue-gray-3: #6d7485;
--color-blue-gray-4: #9098b3;
--color-blue-gray-5: #aab1cf;
--color-blue-gray-6: #9098b3;
--color-contrast-1: #101010;
--color-contrast-2: #1a1a1a;
--color-background-canvas: #333;
--color-focus-shadow: rgba(32, 162, 255, 0.4)
}
@-webkit-keyframes timeline {
0% {
background-position: -200px 0
}
to {
background-position: 200px 0
}
}
@keyframes timeline {
0% {
background-position: -200px 0
}
to {
background-position: 200px 0
}
}
@-webkit-keyframes spin {
0% {
transform: rotate(0deg)
}
to {
transform: rotate(1turn)
}
}
@keyframes spin {
0% {
transform: rotate(0deg)
}
to {
transform: rotate(1turn)
}
}
@-webkit-keyframes slide {
to {
transform: translateY(0)
}
}
@keyframes slide {
to {
transform: translateY(0)
}
}
.ui__base {
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
box-sizing: border-box;
font-size: var(--font-size-default);
line-height: 1.25;
font-family: inherit;
color: var(--color-font-primary);
fill: var(--color-font-primary);
font-weight: var(--font-weight-normal);
font-family: var(--font-family);
-webkit-font-smoothing: auto;
-moz-osx-font-smoothing: grayscale;
-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
-webkit-overflow-scrolling: touch
}
.ui__base html {
line-height: 1.15;
-webkit-text-size-adjust: 100%
}
.ui__base body {
margin: 0
}
.ui__base main {
display: block
}
.ui__base h1 {
font-size: 2em;
margin: .67em 0
}
.ui__base hr {
box-sizing: content-box;
height: 0;
overflow: visible
}
.ui__base pre {
font-family: monospace, monospace;
font-size: 1em
}
.ui__base a {
background-color: transparent
}
.ui__base abbr[title] {
border-bottom: none;
text-decoration: underline;
-webkit-text-decoration: underline dotted;
text-decoration: underline dotted
}
.ui__base b,
.ui__base strong {
font-weight: bolder
}
.ui__base code,
.ui__base kbd,
.ui__base samp {
font-family: monospace, monospace;
font-size: 1em
}
.ui__base small {
font-size: 80%
}
.ui__base sub,
.ui__base sup {
font-size: 75%;
line-height: 0;
position: relative;
vertical-align: baseline
}
.ui__base sub {
bottom: -.25em
}
.ui__base sup {
top: -.5em
}
.ui__base img {
border-style: none
}
.ui__base button,
.ui__base input,
.ui__base optgroup,
.ui__base select,
.ui__base textarea {
font-family: inherit;
font-size: 100%;
line-height: 1.15;
margin: 0
}
.ui__base button,
.ui__base input {
overflow: visible
}
.ui__base button,
.ui__base select {
text-transform: none
}
.ui__base [type=button],
.ui__base [type=reset],
.ui__base [type=submit],
.ui__base button {
-webkit-appearance: button
}
.ui__base [type=button]::-moz-focus-inner,
.ui__base [type=reset]::-moz-focus-inner,
.ui__base [type=submit]::-moz-focus-inner,
.ui__base button::-moz-focus-inner {
border-style: none;
padding: 0
}
.ui__base [type=button]:-moz-focusring,
.ui__base [type=reset]:-moz-focusring,
.ui__base [type=submit]:-moz-focusring,
.ui__base button:-moz-focusring {
outline: 1px dotted ButtonText
}
.ui__base fieldset {
padding: .35em .75em .625em
}
.ui__base legend {
box-sizing: border-box;
color: inherit;
display: table;
max-width: 100%;
padding: 0;
white-space: normal
}
.ui__base progress {
vertical-align: baseline
}
.ui__base textarea {
overflow: auto
}
.ui__base [type=checkbox],
.ui__base [type=radio] {
box-sizing: border-box;
padding: 0
}
.ui__base [type=number]::-webkit-inner-spin-button,
.ui__base [type=number]::-webkit-outer-spin-button {
height: auto
}
.ui__base [type=search] {
-webkit-appearance: textfield;
outline-offset: -2px
}
.ui__base [type=search]::-webkit-search-decoration {
-webkit-appearance: none
}
.ui__base ::-webkit-file-upload-button {
-webkit-appearance: button;
font: inherit
}
.ui__base details {
display: block
}
.ui__base summary {
display: list-item
}
.ui__base [hidden],
.ui__base template {
display: none
}
.ui__base *,
.ui__base :after,
.ui__base :before {
box-sizing: inherit
}
.ui__button {
cursor: pointer;
outline: none;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
transition: var(--focus-transition)
}
.ui__button,
.ui__button__internal {
display: flex;
justify-content: center;
align-items: center
}
.ui__button--disabled {
cursor: default;
opacity: .7
}
.ui__button--disabled>* {
opacity: .7
}
.ui__button:focus.ui__button--tabbing {
box-shadow: 0 0 0 2px var(--color-focus-shadow)
}
.ui__button::-moz-focus-inner {
border: 0
}
.ui__button--style-default {
border: 1px solid var(--color-blue-gray-5);
background-color: var(--color-blue-gray-5);
color: var(--color-contrast-1)
}
.ui__button--style-default i {
fill: var(--color-contrast-1)
}
.ui__button--style-default:active:not(.ui__button--disabled) {
border-color: var(--color-blue-gray-6);
background-color: var(--color-blue-gray-6)
}
.ui__button--style-borderless {
border: 1px solid transparent;
background-color: transparent;
color: var(--color-blue-gray-5)
}
.ui__button--style-borderless i {
fill: var(--color-blue-gray-5)
}
.ui__button--style-borderless:active:not(.ui__button--disabled) {
color: var(--color-blue-gray-6)
}
.ui__button--style-borderless:active:not(.ui__button--disabled) i {
fill: var(--color-blue-gray-6)
}
.ui__button--style-outline {
border: 1px solid var(--color-blue-gray-5);
background-color: transparent;
color: var(--color-blue-gray-5);
transition: background-color 75ms ease-in-out, color 75ms ease-in-out
}
.ui__button--style-outline i {
fill: var(--color-blue-gray-5)
}
.ui__button--style-outline:focus.ui__button--tabbing,
.ui__button--style-outline:hover:not(.ui__button--disabled) {
background-color: var(--color-blue-gray-5);
color: var(--color-contrast-1)
}
.ui__button--style-outline:focus.ui__button--tabbing i,
.ui__button--style-outline:hover:not(.ui__button--disabled) i {
fill: var(--color-contrast-1)
}
.ui__button--style-outline:active:not(.ui__button--disabled) {
border-color: var(--color-blue-gray-6);
background-color: var(--color-blue-gray-6)
}
.ui__button--size-small {
border-radius: var(--border-radius);
font-size: var(--font-size-small);
padding: 2px var(--padding-tiny);
min-height: 24px
}
.ui__button--size-default {
border-radius: var(--border-radius);
padding: var(--padding-tiny) var(--padding-medium);
min-width: 88px;
min-height: 32px
}
.ui__button--size-large {
border-radius: var(--border-radius);
padding: var(--padding-tiny) var(--padding-large);
min-width: 120px;
min-height: 40px
}
.ui__buttonGroup {
margin: calc(0px - var(--padding-tiny));
display: flex;
flex-wrap: wrap
}
.ui__buttonGroup>.ui__buttonGroup {
margin: 0
}
.ui__buttonGroup>button {
margin: var(--padding-tiny)
}
.ui__buttonGroup--reverse {
flex-wrap: wrap-reverse
}
@media (max-width:767px) {
.ui__buttonGroup--centerMobile.ui__buttonGroup {
justify-content: center
}
}
.ui__buttonGroup--position-left {
justify-content: flex-start
}
.ui__buttonGroup--position-center {
justify-content: center
}
.ui__buttonGroup--position-right {
justify-content: flex-end
}
.ui__buttonGroup--position-space-between {
justify-content: space-between
}
.ui__buttonGroup--position-space-around {
justify-content: space-around
}
.ui__choice {
display: flex;
margin: var(--padding-tiny) var(--padding-tiny) var(--padding-tiny) 0
}
.ui__choice--center {
align-items: center
}
.ui__choice--disabled .ui__choice__input>input,
.ui__choice--disabled .ui__choice__label {
cursor: default
}
.ui__choice--radio .ui__choice__input__check {
border-radius: 50%
}
.ui__choice--radio .ui__choice__input__check--checked {
background-color: var(--color-contrast-1);
border: 5px solid var(--color-blue-gray-5)
}
.ui__choice--radio .ui__choice__input__check--checked.ui__choice__input__check--disabled {
background-color: var(--color-contrast-1);
border: 5px solid var(--color-gray-5)
}
.ui__choice__input {
position: relative;
height: 15px;
width: 15px;
flex-shrink: 0
}
.ui__choice__input__check {
position: absolute;
width: 15px;
height: 15px;
padding: 2px;
border: 1px solid var(--color-blue-gray-3);
border-radius: var(--border-radius-small);
background-color: var(--color-gray-1);
transition: var(--focus-transition)
}
.ui__choice__input__check--disabled {
border-color: var(--color-gray-3)
}
.ui__choice__input__check--checked {
background-color: var(--color-blue-gray-5);
border-color: var(--color-blue-gray-5)
}
.ui__choice__input__check--checked.ui__choice__input__check--disabled {
background-color: var(--color-gray-5);
border-color: var(--color-gray-5)
}
.ui__choice__input__check--focus {
box-shadow: 0 0 0 2px var(--color-focus-shadow)
}
.ui__choice__input__switch {
position: absolute;
width: 24px;
height: 10px;
padding: 2px;
border: 1px solid var(--color-blue-gray-3);
border-radius: 5px;
background-color: var(--color-gray-1);
transition: var(--focus-transition);
top: 50%;
transform: translateY(-50%)
}
.ui__choice__input__switch--disabled {
border-color: var(--color-gray-3)
}
.ui__choice__input__switch--disabled .ui__choice__input__toggle {
background-color: var(--color-gray-4)
}
.ui__choice__input__switch--checked .ui__choice__input__toggle {
left: 9px
}
.ui__choice__input__switch--focus .ui__choice__input__toggle {
box-shadow: 0 0 0 2px var(--color-focus-shadow)
}
.ui__choice__input__toggle {
position: absolute;
height: 14px;
width: 14px;
border-radius: 50%;
background-color: var(--color-blue-gray-5);
top: 50%;
left: -1px;
transform: translateY(-50%);
transition: left .25s ease
}
.ui__choice__input__icon {
height: 17px;
width: 17px;
fill: var(--color-contrast-1);
position: absolute;
top: -3px;
left: -2px
}
.ui__choice__input>input {
cursor: pointer;
opacity: 0;
position: absolute;
top: 0;
left: 0;
height: 15px;
width: 15px
}
.ui__choice__input--switch {
height: 15px;
width: 24px
}
.ui__choice__input--switch>input {
height: 14px;
width: 24px
}
.ui__choice--leftLabel .ui__choice__label {
padding-right: var(--padding-small);
padding-left: 0
}
.ui__choice__label {
cursor: pointer;
padding-left: var(--padding-small);
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none
}
.ui__choice__label--disabled {
color: var(--color-gray-5)
}
.ui__clickableDiv {
display: inline-block;
outline: none;
border: none;
transition: var(--focus-transition)
}
.ui__clickableDiv:focus.ui__clickableDiv--tabbing:not(.ui__clickableDiv--noFocusStyle):not(.ui__clickableDiv--disabled) {
box-shadow: 0 0 0 2px var(--color-focus-shadow)
}
.ui__clickableDiv--usePointer {
cursor: pointer
}
.ui__dragLayer {
pointer-events: none;
position: fixed;
top: 0;
right: 0;
bottom: 0;
left: 0
}
.ui__draggable {
display: inline-block
}
.ui__draggable__animated--inMotion {
pointer-events: none
}
.ui__editableText--disabled .ui__editableText__button>span {
opacity: .7
}
.ui__editableText--centerText .ui__editableText__button {
justify-content: center
}
.ui__editableText--centerText .ui__editableText__field {
text-align: center
}
.ui__editableText--bordered .ui__editableText__button {
border: 1px solid var(--color-blue-gray-2)
}
.ui__editableText--bordered:not(.ui__editableText--disabled) .ui__editableText__button:hover {
background-color: var(--color-blue-gray-2)
}
.ui__editableText--bordered:not(.ui__editableText--disabled) .ui__editableText__button--placeholder {
color: var(--color-blue-gray-3)
}
.ui__editableText .ui__editableText__field {
line-height: 1
}
.ui__editableText__button,
.ui__editableText__field {
min-height: 28px;
min-width: 100%;
color: var(--color-font-primary);
padding: var(--padding-tiny);
border-radius: var(--border-radius);
border: 1px solid transparent
}
.ui__editableText__button {
display: flex;
align-items: center;
transition: background-color .1s;
transition: var(--focus-transition);
line-height: 1.15
}
.ui__editableText__button>span {
line-height: 1.15rem;
white-space: nowrap;
text-overflow: ellipsis;
overflow: hidden
}
.ui__editableText__button--noFocusTransition {
transition: none
}
.ui__editableText:not(.ui__editableText--disabled):not(.ui__editableText--locked) .ui__editableText__button:hover {
border: 1px solid var(--color-blue-gray-2)
}
.ui__editableText:not(.ui__editableText--disabled):not(.ui__editableText--locked) .ui__editableText__button--placeholder {
color: var(--color-blue-gray-3)
}
.ui__editableText__field {
background-color: var(--color-blue-gray-2);
outline: none;
transition: var(--focus-transition)
}
.ui__editableText__field:focus.ui__editableText__field--tabbing {
box-shadow: 0 0 0 2px var(--color-focus-shadow);
transition: none
}
.ui__fileOrganizer {
position: relative;
outline: 0;
height: 100%
}
.ui__fileOrganizer__draglayer {
overflow: visible;
display: flex;
justify-content: center;
align-items: center
}
.ui__filePicker__file {
display: flex;
align-items: center;
min-height: 28px
}
.ui__filePicker__file__text {
flex: 1 1 auto;
overflow: hidden
}
.ui__filePicker__file__delete.ui__button.ui__iconButton {
height: 28px;
width: 28px;
min-height: 28px;
min-width: 28px;
margin-left: var(--padding-tiny)
}
.ui__filePlaceholder {
background-color: #fff;
padding: 10px;
height: 164px;
width: 128px;
position: relative
}
.ui__filePlaceholder__block {
background-color: #ccc
}
.ui__filePlaceholder__block--thumbnail {
width: 40px;
height: 40px;
float: left
}
.ui__filePlaceholder__block--line-sm,
.ui__filePlaceholder__block--line-xs {
margin-left: 50px;
margin-top: 10px;
height: 6px
}
.ui__filePlaceholder__block--line-xs {
width: 40px
}
.ui__filePlaceholder__block--line-df {
margin-top: 20px;
width: 90px;
height: 6px
}
.ui__filePlaceholder__block--line-lg {
margin-top: 10px;
width: 90px;
height: 6px
}
.ui__filePlaceholder__block--line-lgx {
margin-top: 10px;
height: 6px
}
.ui__filePlaceholder__extension {
position: absolute;
color: #ccc;
text-align: center;
font-size: var(--font-size-large);
right: 10px;
left: 10px;
bottom: 10px
}
.ui__fileSkeleton {
background-color: #fff;
padding: 10px;
height: 164px;
width: 128px
}
.ui__fileSkeleton__block {
-webkit-animation: timeline 2s linear infinite;
animation: timeline 2s linear infinite;
background: linear-gradient(90deg, #eee 0, #ddd 10%, #eee 20%);
background-size: 600px auto
}
.ui__fileSkeleton__block--thumbnail {
width: 40px;
height: 40px;
float: left
}
.ui__fileSkeleton__block--line-sm,
.ui__fileSkeleton__block--line-xs {
margin-left: 50px;
margin-top: 10px;
height: 6px
}
.ui__fileSkeleton__block--line-xs {
width: 40px
}
.ui__fileSkeleton__block--line-df {
margin-top: 20px;
width: 90px;
height: 6px
}
.ui__fileSkeleton__block--line-lg {
margin-top: 10px;
width: 90px;
height: 6px
}
.ui__fileSkeleton__block--line-lgx {
margin-top: 10px;
height: 6px
}
.ui__focusTrap {
color: #00f
}
.ui__focusTrap--disabled {
color: red
}
.ui__icon {
display: inline-flex;
justify-content: center;
align-items: center
}
.ui__button.ui__iconButton {
width: auto;
min-width: auto;
padding: 0 3px
}
.ui__image {
max-width: 100%;
max-height: 100%
}
.ui__input__wrapper {
width: 220px
}
.ui__input__wrapper--fill {
width: 100%
}
.ui__input__wrapper--pad {
padding-bottom: 20px
}
.ui__input {
border-radius: var(--border-radius);
transition: var(--focus-transition);
background-color: var(--color-gray-1);
border: 1px solid var(--color-gray-4);
display: inline-flex;
align-items: center;
width: 100%
}
.ui__input--message-default.ui__input--focused {
border: 1px solid var(--color-theme-primary);
box-shadow: 0 0 0 2px var(--color-focus-shadow)
}
.ui__input--message-warning {
border-color: var(--color-message-warning)
}
.ui__input--message-warning i {
fill: var(--color-message-warning)
}
.ui__input--message-warning.ui__input--focused {
box-shadow: 0 0 0 2px var(--color-message-warning-focus-shadow)
}
.ui__input--message-error {
border-color: var(--color-message-error)
}
.ui__input--message-error i {
fill: var(--color-message-error)
}
.ui__input--message-error.ui__input--focused {
box-shadow: 0 0 0 2px var(--color-message-error-focus-shadow)
}
.ui__input .ui__input__input {
flex: 1 1 auto;
padding: var(--padding-tiny);
height: 28px;
outline: none;
border: none;
background-color: transparent;
color: var(--color-font-primary);
min-height: 24px
}
.ui__input .ui__input__input--disabled {
opacity: .7
}
.ui__input__messageText {
width: 100%;
font-size: var(--font-size-small);
margin-top: var(--padding-tiny)
}
.ui__input .ui__iconButton {
border: none;
padding: 0;
min-height: 0
}
.ui__input .ui__icon {
padding: 0 2px
}
.ui__input svg {
fill: var(--color-blue-gray-5)
}
.ui__label--attached:after {
height: 2px;
width: 1px;
content: "";
display: block
}
.ui__label--disabled {
opacity: .7
}
.ui__label__optional {
font-size: var(--font-size-small);
margin-left: var(--padding-tiny);
color: var(--color-font-secondary);
font-style: italic
}
.ui__modal__wrapper {
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
transition: opacity .25s;
opacity: 1;
background-color: var(--color-overlay-canvas);
overflow: auto;
display: flex;
padding: var(--padding) var(--padding) 0
}
@media (min-width:768px) {
.ui__modal__wrapper {
padding: var(--padding-huge) var(--padding-huge) 0
}
}
.ui__modal__wrapper--closed {
opacity: 0;
pointer-events: none
}
.ui__modal__wrapper--fullWidth .ui__modal__paddingFix {
max-width: none
}
.ui__modal__paddingFix {
padding: 0 0 var(--padding);
margin: auto;
width: 100%
}
@media (min-width:768px) {
.ui__modal__paddingFix {
padding: 0 0 var(--padding-huge);
max-width: 500px
}
}
.ui__modal {
background-color: var(--color-gray-2);
border-radius: var(--border-radius);
overflow: hidden;
width: 100%
}
.ui__modal--hidden {
pointer-events: none;
visibility: hidden
}
.ui__modal__top {
display: flex
}
.ui__modal__top__heading {
font-size: var(--font-size-large);
flex: 1 1 auto;
padding: var(--padding-medium) var(--padding)
}
.ui__modal__top__close.ui__button {
padding: 0 calc(var(--padding-medium) - 2px);
margin: 2px
}
.ui__modal__body {
padding: var(--padding-medium) var(--padding);
background-color: var(--color-gray-1);
border-top: 1px solid var(--color-gray-4);
border-bottom: 1px solid var(--color-gray-4)
}
.ui__modal__body--noButton {
border-bottom: none
}
.ui__modal__buttonGroup {
padding: var(--padding-medium) var(--padding)
}
.ui__overlay {
position: fixed;
top: 0;
right: 0;
bottom: 0;
left: 0;
z-index: var(--z-index-overlay);
pointer-events: none
}
.ui__overlay>* {
pointer-events: all
}
.ui__spinner {
display: inline-block
}
.ui__spinner__animated {
-webkit-animation: spin 1.2s cubic-bezier(.4, .2, .6, .8) infinite;
animation: spin 1.2s cubic-bezier(.4, .2, .6, .8) infinite;
width: 100%;
height: 100%;
border-radius: 50%;
border: solid;
border-color: var(--color-blue-gray-4) var(--color-blue-gray-1) var(--color-blue-gray-1)
}
.ui__spinner--size-tiny {
width: 12px;
height: 12px
}
.ui__spinner--size-tiny .ui__spinner__animated {
border-width: 1px
}
.ui__spinner--size-small {
width: 16px;
height: 16px
}
.ui__spinner--size-small .ui__spinner__animated {
border-width: 2px
}
.ui__spinner--size-default {
width: 24px;
height: 24px
}
.ui__spinner--size-default .ui__spinner__animated {
border-width: 2px
}
.ui__spinner--size-large {
width: 32px;
height: 32px
}
.ui__spinner--size-large .ui__spinner__animated {
border-width: 2px
}
.ui__thumbnail {
padding: var(--padding);
position: relative;
outline: none;
width: 240px;
height: 240px;
transition: background-color .1s;
display: flex;
flex-direction: column
}
.ui__thumbnail--selected:not(.ui__thumbnail--dragging) {
background-color: var(--color-blue-gray-1)
}
.ui__thumbnail--dragging {
border: 2px dashed var(--color-theme-primary);
z-index: var(--z-index-dragging);
margin: -1px;
width: 242px;
height: 242px
}
.ui__thumbnail--dragging .ui__thumbnail__controls,
.ui__thumbnail--dragging .ui__thumbnail__image,
.ui__thumbnail--dragging .ui__thumbnail__label {
visibility: hidden
}
.ui__thumbnail--otherDragging {
pointer-events: none
}
@media (max-width:767px) {
.ui__thumbnail .ui__thumbnail__controls {
opacity: 1
}
}
.ui__thumbnail--focused.ui__thumbnail--tabbing:not(.ui__thumbnail--disabled):not(.ui__thumbnail--dragging):not(.ui__thumbnail--otherDragging) .ui__thumbnail__controls,
.ui__thumbnail:hover:not(.ui__thumbnail--dragging):not(.ui__thumbnail--otherDragging) .ui__thumbnail__controls {
opacity: 1
}
.ui__thumbnail--focused.ui__thumbnail--tabbing:not(.ui__thumbnail--disabled):not(.ui__thumbnail--dragging):not(.ui__thumbnail--otherDragging):not(.ui__thumbnail--selected),
.ui__thumbnail:hover:not(.ui__thumbnail--dragging):not(.ui__thumbnail--otherDragging):not(.ui__thumbnail--selected) {
background-color: var(--color-gray-4)
}
.ui__thumbnail:focus.ui__thumbnail--tabbing:not(.ui__thumbnail--disabled) .ui__thumbnail__image .ui__thumbnail__image__skeleton,
.ui__thumbnail:focus.ui__thumbnail--tabbing:not(.ui__thumbnail--disabled) .ui__thumbnail__image img {
box-shadow: 0 0 0 2px var(--color-focus-shadow);
border-color: var(--color-focus-shadow)
}
.ui__thumbnail__controls {
transition: opacity .1s;
position: absolute;
top: var(--padding-tiny);
right: var(--padding-tiny);
opacity: 0;
display: flex;
border-radius: var(--border-radius);
background-color: var(--color-background-canvas)
}
.ui__thumbnail__selectedIcon {
position: absolute;
top: var(--padding-tiny);
left: var(--padding-tiny)
}
.ui__thumbnail__image {
display: flex;
justify-content: center;
align-items: center;
flex-direction: column;
height: 0;
flex: 1 1 auto;
pointer-events: none
}
.ui__thumbnail__image img {
background-color: #fff
}
.ui__thumbnail__image .ui__thumbnail__image__placeholder,
.ui__thumbnail__image .ui__thumbnail__image__skeleton,
.ui__thumbnail__image img {
border: 1px solid var(--color-blue-gray-1);
transition: var(--focus-transition)
}
.ui__thumbnail__label {
text-align: center;
margin-top: var(--padding)
}
.ui__thumbnailDragLayer {
width: 240px;
height: 240px;
display: flex;
justify-content: center;
align-items: center
}
.ui__thumbnailDragLayer__icon {
height: 60px;
width: 60px;
fill: var(--color-blue-gray-3)
}
.ui__thumbnailDragLayer__numFiles {
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
display: flex;
flex-direction: column;
align-items: flex-end;
font-size: var(--font-size-default)
}
.ui__thumbnailDragLayer__numFiles__wrapper {
position: relative;
top: -10px;
right: -10px;
padding: var(--padding-tiny);
border-radius: var(--border-radius-large);
background-color: var(--color-blue-gray-3);
min-width: 20px;
display: flex;
justify-content: center;
align-items: center
}
.ui__thumbnailDragLayer__wrapper {
position: relative
}
.ui__thumbnailSkeleton {
padding: var(--padding);
position: relative;
outline: none;
width: 240px;
height: 240px;
transition: background-color .1s;
display: flex;
flex-direction: column
}
.ui__thumbnailSkeleton:hover {
background-color: var(--color-gray-4)
}
.ui__thumbnailSkeleton__image {
display: flex;
justify-content: center;
align-items: center;
flex-direction: column;
height: 0;
flex: 1 1 auto
}
.ui__thumbnailSkeleton__image .ui__thumbnailSkeleton__image__skeleton {
border: 1px solid var(--color-blue-gray-1);
transition: var(--focus-transition)
}
.ui__thumbnailSkeleton__label {
margin-top: var(--padding);
height: 28px
}
.ui__toast {
display: grid;
display: flex;
background-color: var(--color-gray-1);
border-radius: var(--border-radius);
overflow: hidden;
box-shadow: var(--box-shadow-3);
padding-right: 2px
}
@media (max-width:767px) {
.ui__toast {
width: 100%
}
}
@media (min-width:768px) {
.ui__toast {
max-width: 500px
}
}
.ui__toast--message-info .ui__toast__border,
.ui__toast--message-loading .ui__toast__border {
background-color: var(--color-message-info)
}
.ui__toast--message-info .ui__toast__icon,
.ui__toast--message-loading .ui__toast__icon {
fill: var(--color-message-info)
}
.ui__toast--message-warning .ui__toast__border {
background-color: var(--color-message-warning)
}
.ui__toast--message-warning .ui__toast__icon {
fill: var(--color-message-warning)
}
.ui__toast--message-error .ui__toast__border {
background-color: var(--color-message-error)
}
.ui__toast--message-error .ui__toast__icon {
fill: var(--color-message-error)
}
.ui__toast--message-success .ui__toast__border {
background-color: var(--color-message-success)
}
.ui__toast--message-success .ui__toast__icon {
fill: var(--color-message-success)
}
.ui__toast__border {
width: 4px;
flex-shrink: 0
}
.ui__toast__icon,
.ui__toast__spinner {
margin: 0 var(--padding-medium);
display: flex;
justify-content: center;
align-items: center;
flex-shrink: 0
}
.ui__toast__spinner {
height: 100%
}
.ui__toast__spinner>* {
height: 20px;
width: 20px
}
.ui__toast__copy {
padding: var(--padding-small) var(--padding) var(--padding-small) 0;
display: flex;
flex-direction: column;
justify-content: center;
flex: 1 1 auto
}
.ui__toast__copy__heading {
flex-shrink: 0;
color: var(--color-font-primary);
font-weight: var(--font-weight-bold);
padding: 2px 0
}
.ui__toast__copy__body {
flex-shrink: 0;
color: var(--color-font-secondary);
padding: 2px 0
}
.ui__toast__action {
display: flex;
justify-content: flex-end;
align-items: center;
margin-left: var(--padding-tiny);
flex-grow: 0
}
.ui__toast__button {
width: auto;
min-width: auto;
padding: 0 var(--padding-tiny)
}
.ui__toastProvider__toast--position-bottom,
.ui__toastProvider__toast--position-bottom-left,
.ui__toastProvider__toast--position-bottom-right {
position: absolute;
bottom: 0;
left: 0;
right: 0;
transform: translateY(100%)
}
.ui__toastProvider {
opacity: 1;
transition: opacity .25s;
position: relative
}
.ui__toastProvider--closing {
opacity: 0
}
.ui__toastProvider__toast {
display: flex;
padding: var(--padding);
pointer-events: none ;
-webkit-animation: slide .25s forwards;
animation: slide .25s forwards
}
.ui__toastProvider__toast>* {
pointer-events: all
}
.ui__toastProvider__toast--position-top-left {
transform: translateY(-100%);
justify-content: flex-start
}
.ui__toastProvider__toast--position-top {
transform: translateY(-100%);
justify-content: center
}
.ui__toastProvider__toast--position-top-right {
transform: translateY(-100%);
justify-content: flex-end
}
.ui__toastProvider__toast--position-bottom-left {
justify-content: flex-start
}
.ui__toastProvider__toast--position-bottom {
justify-content: center
}
.ui__toastProvider__toast--position-bottom-right {
justify-content: flex-end
}
.ui__toolButton__action:active:not(.ui__toolButton--disabled),
.ui__toolButton__action:focus.ui__toolButton--tabbing:not(.ui__toolButton--disabled),
.ui__toolButton__action:hover:not(.ui__toolButton--disabled),
.ui__toolButton__expand.ui__button:active:not(.ui__toolButton--disabled),
.ui__toolButton__expand.ui__button:focus.ui__toolButton--tabbing:not(.ui__toolButton--disabled),
.ui__toolButton__expand.ui__button:hover:not(.ui__toolButton--disabled) {
background-color: hsla(0, 0%, 68.6%, .3)
}
.ui__toolButton {
display: inline-flex;
flex-direction: column
}
.ui__toolButton--expanded.ui__toolButton--right {
flex-direction: row
}
.ui__toolButton--expanded.ui__toolButton--bottom {
flex-direction: column
}
.ui__toolButton__action.ui__toolButton--expanded.ui__toolButton--right {
border-radius: var(--border-radius) 0 0 var(--border-radius)
}
.ui__toolButton__action.ui__toolButton--expanded.ui__toolButton--bottom {
border-radius: var(--border-radius) var(--border-radius) 0 0
}
.ui__toolButton__action__internals {
width: 100%;
height: 100%;
display: flex;
justify-content: center;
align-items: center
}
.ui__toolButton__expand.ui__button {
padding: 0;
display: flex;
justify-content: center;
align-items: center;
min-height: 0
}
.ui__toolButton__expand.ui__button.ui__toolButton--right {
border-radius: 0 var(--border-radius) var(--border-radius) 0
}
.ui__toolButton__expand.ui__button.ui__toolButton--bottom {
border-radius: 0 0 var(--border-radius) var(--border-radius)
}