UNPKG

@uploadcare/blocks

Version:

Building blocks for Uploadcare products integration

969 lines (844 loc) 25 kB
:where(.lr-cldtr-common), :host { /* Theme settings >>> */ --rgb-primary-accent: 6, 2, 196; --rgb-text-base: 0, 0, 0; --rgb-text-accent-contrast: 255, 255, 255; --rgb-fill-contrast: 255, 255, 255; --rgb-fill-shaded: 245, 245, 245; --rgb-shadow: 0, 0, 0; --rgb-error: 209, 81, 81; --opacity-shade-mid: 0.2; /* <<< Theme settings */ --color-primary-accent: rgb(var(--rgb-primary-accent)); --color-text-base: rgb(var(--rgb-text-base)); --color-text-accent-contrast: rgb(var(--rgb-text-accent-contrast)); --color-text-soft: rgb(var(--rgb-fill-contrast)); --color-text-error: rgb(var(--rgb-error)); --color-fill-contrast: rgb(var(--rgb-fill-contrast)); --color-modal-backdrop: rgba(var(--rgb-fill-shaded), 0.95); --color-image-background: rgba(var(--rgb-fill-shaded)); --color-outline: rgba(var(--rgb-text-base), var(--opacity-shade-mid)); --color-underline: rgba(var(--rgb-text-base), 0.08); --color-shade: rgba(var(--rgb-text-base), 0.02); --color-focus-ring: var(--color-primary-accent); --color-input-placeholder: rgba(var(--rgb-text-base), 0.32); --color-error: rgb(var(--rgb-error)); --font-size-ui: 16px; --font-size-title: 18px; --font-weight-title: 500; --font-size-soft: 14px; --size-touch-area: 40px; --size-panel-heading: 66px; --size-ui-min-width: 130px; --size-line-width: 1px; --size-modal-width: 650px; --border-radius-connect: 2px; --border-radius-editor: 3px; --border-radius-thumb: 4px; --border-radius-ui: 5px; --border-radius-base: 6px; --gap-min: 5px; --gap-mid-1: 10px; --gap-mid-2: 15px; --gap-max: 20px; --opacity-min: var(--opacity-shade-mid); --opacity-mid: 0.1; --opacity-max: 0.05; --transition-duration-2: var(--transition-duration-all, 0.2s); --transition-duration-3: var(--transition-duration-all, 0.3s); --transition-duration-4: var(--transition-duration-all, 0.4s); --transition-duration-5: var(--transition-duration-all, 0.5s); --shadow-base: 0px 5px 15px rgba(var(--rgb-shadow), 0.1), 0px 1px 4px rgba(var(--rgb-shadow), 0.15); } :where(.lr-cldtr-common) :is([can-handle-paste]:hover, [can-handle-paste]:focus), :host :is([can-handle-paste]:hover, [can-handle-paste]:focus) { --can-handle-paste: 'true'; } :where(.lr-cldtr-common) :is([tabindex][focus-visible], [tabindex]:hover, [with-effects][focus-visible], [with-effects]:hover), :host :is([tabindex][focus-visible], [tabindex]:hover, [with-effects][focus-visible], [with-effects]:hover) { --filter-effect: var(--hover-filter) !important; --opacity-effect: var(--hover-opacity) !important; --color-effect: var(--hover-color-rgb) !important; } :where(.lr-cldtr-common) :is([tabindex]:active, [with-effects]:active), :host :is([tabindex]:active, [with-effects]:active) { --filter-effect: var(--down-filter) !important; --opacity-effect: var(--down-opacity) !important; --color-effect: var(--down-color-rgb) !important; } :where(.lr-cldtr-common) :is([tabindex][active], [with-effects][active]), :host :is([tabindex][active], [with-effects][active]) { --filter-effect: var(--active-filter) !important; --opacity-effect: var(--active-opacity) !important; --color-effect: var(--active-color-rgb) !important; } :where(.lr-cldtr-common) [hidden-scrollbar]::-webkit-scrollbar, :host [hidden-scrollbar]::-webkit-scrollbar { display: none; } :where(.lr-cldtr-common) [hidden-scrollbar], :host [hidden-scrollbar] { -ms-overflow-style: none; scrollbar-width: none; } lr-cloud-editor { display: block; width: 100%; height: 100%; max-height: 100%; --modal-header-opacity: 1; --modal-header-height: var(--size-panel-heading); --modal-toolbar-height: var(--size-panel-heading); --transparent-pixel: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII='); } lr-cloud-editor.editor_ON { --modal-header-opacity: 0; --modal-header-height: 0px; --modal-toolbar-height: calc(var(--size-panel-heading) * 2); } lr-cloud-editor.editor_OFF { --modal-header-opacity: 1; --modal-header-height: var(--size-panel-heading); --modal-toolbar-height: var(--size-panel-heading); } lr-cloud-editor > .wrapper { position: relative; display: grid; grid-template-rows: minmax(var(--l-min-img-height), var(--l-max-img-height)) minmax(var(--modal-toolbar-height), auto); height: 100%; overflow: hidden; overflow-y: auto; transition: 0.3s; --l-min-img-height: var(--modal-toolbar-height); --l-max-img-height: 100%; --l-edit-button-width: 120px; --l-toolbar-horizontal-padding: var(--gap-mid-1); } @media only screen and (max-width: 800px) { lr-cloud-editor > .wrapper { --l-edit-button-width: 70px; --l-toolbar-horizontal-padding: var(--gap-min); } } lr-cloud-editor > .wrapper > .viewport { display: flex; align-items: center; justify-content: center; overflow: hidden; } lr-cloud-editor > .wrapper > .viewport > .image_container > .image { --viewer-image-opacity: 1; position: absolute; top: 0px; left: 0px; z-index: 10; display: block; box-sizing: border-box; width: 100%; height: 100%; object-fit: scale-down; background-color: var(--color-image-background); transform: scale(1); opacity: var(--viewer-image-opacity); user-select: none; pointer-events: auto; } lr-cloud-editor > .wrapper > .viewport > .image_container > .image.image_visible_viewer { transition: opacity var(--transition-duration-3) ease-in-out, transform var(--transition-duration-4); } lr-cloud-editor > .wrapper > .viewport > .image_container > .image.image_hidden_to_cropper { background-image: var(--transparent-pixel); transform: scale(1); transition: transform var(--transition-duration-4), opacity var(--transition-duration-3) steps(1, jump-end); pointer-events: none; --viewer-image-opacity: 0; } lr-cloud-editor > .wrapper > .viewport > .image_container > .image.image_hidden_effects { transform: scale(1); transition: opacity var(--transition-duration-3) cubic-bezier(0.5, 0, 1, 1), transform var(--transition-duration-4); pointer-events: none; --viewer-image-opacity: 0; } lr-cloud-editor > .wrapper > .viewport > .image_container { position: relative; display: block; width: 100%; height: 100%; background-color: var(--color-image-background); transition: var(--transition-duration-3); } lr-cloud-editor > .wrapper > .toolbar { position: relative; transition: 0.3s; } lr-cloud-editor > .wrapper > .toolbar > .toolbar_content { position: absolute; bottom: 0px; left: 0px; box-sizing: border-box; width: 100%; height: var(--modal-toolbar-height); min-height: var(--size-panel-heading); background-color: var(--color-fill-contrast); } lr-cloud-editor > .wrapper > .toolbar > .toolbar_content.toolbar_content__viewer { display: flex; align-items: center; justify-content: space-between; height: var(--size-panel-heading); padding-right: var(--l-toolbar-horizontal-padding); padding-left: var(--l-toolbar-horizontal-padding); } lr-cloud-editor > .wrapper > .toolbar > .toolbar_content.toolbar_content__editor { display: flex; } lr-cloud-editor > .wrapper > .viewport > .info_pan { position: absolute; user-select: none; } lr-cloud-editor > .wrapper > .viewport > .file_type_outer { position: absolute; z-index: 2; display: flex; max-width: 120px; transform: translateX(-40px); user-select: none; } lr-cloud-editor > .wrapper > .viewport > .file_type_outer > .file_type { padding: 4px 0.8em; } lr-cloud-editor > .wrapper > .network_problems_splash { position: absolute; z-index: 4; display: flex; flex-direction: column; width: 100%; height: 100%; background-color: var(--color-fill-contrast); } lr-cloud-editor > .wrapper > .network_problems_splash > .network_problems_content { display: flex; flex: 1; flex-direction: column; align-items: center; justify-content: center; } lr-cloud-editor > .wrapper > .network_problems_splash > .network_problems_content > .network_problems_icon { display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; color: rgba(var(--rgb-text-base), 0.6); background-color: rgba(var(--rgb-fill-shaded)); border-radius: 50%; } lr-cloud-editor > .wrapper > .network_problems_splash > .network_problems_content > .network_problems_text { margin-top: var(--gap-max); font-size: var(--font-size-ui); } lr-cloud-editor > .wrapper > .network_problems_splash > .network_problems_footer { display: flex; align-items: center; justify-content: center; height: var(--size-panel-heading); } lr-crop-frame > .svg { position: absolute; top: 0px; left: 0px; z-index: 2; width: 100%; height: 100%; border-top-left-radius: var(--border-radius-base); border-top-right-radius: var(--border-radius-base); opacity: inherit; transition: var(--transition-duration-3); } lr-crop-frame > .thumb { --idle-color-rgb: var(--color-text-base); --hover-color-rgb: var(--color-primary-accent); --focus-color-rgb: var(--color-primary-accent); --down-color-rgb: var(--color-primary-accent); --color-effect: var(--idle-color-rgb); color: var(--color-effect); transition: color var(--transition-duration-3), opacity var(--transition-duration-3); } lr-crop-frame > .thumb--visible { opacity: 1; pointer-events: auto; } lr-crop-frame > .thumb--hidden { opacity: 0; pointer-events: none; } lr-crop-frame > .guides { transition: var(--transition-duration-3); } lr-crop-frame > .guides--hidden { opacity: 0; } lr-crop-frame > .guides--semi-hidden { opacity: 0.2; } lr-crop-frame > .guides--visible { opacity: 1; } lr-editor-button-control, lr-editor-crop-button-control, lr-editor-filter-control, lr-editor-operation-control { --l-base-min-width: 40px; --l-base-height: var(--l-base-min-width); --opacity-effect: var(--idle-opacity); --color-effect: var(--idle-color-rgb); --filter-effect: var(--idle-filter); --idle-color-rgb: var(--rgb-text-base); --idle-opacity: 0.05; --idle-filter: 1; --hover-color-rgb: var(--idle-color-rgb); --hover-opacity: 0.08; --hover-filter: 0.8; --down-color-rgb: var(--hover-color-rgb); --down-opacity: 0.12; --down-filter: 0.6; position: relative; display: grid; grid-template-columns: var(--l-base-min-width) auto; align-items: center; height: var(--l-base-height); color: rgba(var(--idle-color-rgb)); outline: none; cursor: pointer; transition: var(--l-width-transition); } lr-editor-button-control > .active, lr-editor-operation-control > .active, lr-editor-crop-button-control > .active, lr-editor-filter-control > .active { --idle-color-rgb: var(--rgb-primary-accent); } lr-editor-button-control > .not_active, lr-editor-operation-control > .not_active, lr-editor-crop-button-control > .not_active, lr-editor-filter-control > .not_active { --idle-color-rgb: var(--rgb-text-base); } lr-editor-button-control > .before, lr-editor-operation-control > .before, lr-editor-crop-button-control > .before, lr-editor-filter-control > .before { position: absolute; right: 0px; left: 0px; z-index: -1; width: 100%; height: 100%; background-color: rgba(var(--color-effect), var(--opacity-effect)); border-radius: var(--border-radius-editor); transition: var(--transition-duration-3); } lr-editor-button-control > .title, lr-editor-operation-control > .title, lr-editor-crop-button-control > .title, lr-editor-filter-control > .title { padding-right: var(--gap-mid-1); font-size: 0.7em; letter-spacing: 1.004px; text-transform: uppercase; } lr-editor-filter-control > .preview { position: absolute; right: 0px; left: 0px; z-index: 1; width: 100%; height: var(--l-base-height); background-repeat: no-repeat; background-size: contain; border-radius: var(--border-radius-editor); opacity: 0; filter: brightness(var(--filter-effect)); transition: var(--transition-duration-3); } lr-editor-filter-control > .original-icon { color: var(--color-text-base); opacity: 0.3; } lr-editor-image-cropper { position: absolute; top: 0px; left: 0px; z-index: 10; display: block; width: 100%; height: 100%; opacity: 0; pointer-events: none; touch-action: none; } lr-editor-image-cropper.active_from_editor { transform: scale(1) translate(0px, 0px); opacity: 1; transition: transform var(--transition-duration-4) cubic-bezier(0.37, 0, 0.63, 1) 0.4s, opacity var(--transition-duration-3); pointer-events: auto; } lr-editor-image-cropper.active_from_viewer { transform: scale(1) translate(0px, 0px); opacity: 1; transition: transform var(--transition-duration-4) cubic-bezier(0.37, 0, 0.63, 1) 0.4s, opacity var(--transition-duration-3); pointer-events: auto; } lr-editor-image-cropper.inactive_to_editor { opacity: 0; transition: transform var(--transition-duration-4) cubic-bezier(0.37, 0, 0.63, 1), opacity var(--transition-duration-3) calc(var(--transition-duration-3) + 0.05s); pointer-events: none; } lr-editor-image-cropper > .canvas { position: absolute; top: 0px; left: 0px; z-index: 1; display: block; width: 100%; height: 100%; } lr-editor-image-fader { position: absolute; top: 0px; left: 0px; display: block; width: 100%; height: 100%; } lr-editor-image-fader.active_from_viewer { z-index: 3; transform: scale(1); opacity: 1; transition: transform var(--transition-duration-4), opacity var(--transition-duration-3) steps(1, jump-start); pointer-events: auto; } lr-editor-image-fader.active_from_cropper { z-index: 3; transform: scale(1); opacity: 1; transition: transform var(--transition-duration-4), opacity var(--transition-duration-3) steps(1, jump-end); pointer-events: auto; } lr-editor-image-fader.inactive_to_cropper { z-index: 3; transform: scale(1); opacity: 0; transition: transform var(--transition-duration-4), opacity var(--transition-duration-3) steps(1, jump-end); pointer-events: none; } lr-editor-image-fader .fader-image { position: absolute; top: 0px; left: 0px; display: block; width: 100%; height: 100%; object-fit: scale-down; transform: scale(1); user-select: none; content-visibility: auto; } lr-editor-image-fader .fader-image--preview { background-color: var(--color-image-background); border-top-left-radius: var(--border-radius-base); border-top-right-radius: var(--border-radius-base); transform: scale(1); opacity: 0; transition: var(--transition-duration-3); } lr-editor-scroller { display: flex; align-items: center; width: 100%; height: 100%; overflow-x: scroll; } lr-editor-slider { display: flex; align-items: center; justify-content: center; width: 100%; height: 66px; } lr-editor-toolbar { position: relative; width: 100%; height: 100%; } @media only screen and (max-width: 600px) { lr-editor-toolbar { --l-tab-gap: var(--gap-mid-1); --l-slider-padding: var(--gap-min); --l-controls-padding: var(--gap-min); } } @media only screen and (min-width: 601px) { lr-editor-toolbar { --l-tab-gap: calc(var(--gap-mid-1) + var(--gap-max)); --l-slider-padding: var(--gap-mid-1); --l-controls-padding: var(--gap-mid-1); } } lr-editor-toolbar > .toolbar-container { position: relative; width: 100%; height: 100%; overflow: hidden; } lr-editor-toolbar > .toolbar-container > .sub-toolbar { position: absolute; display: grid; grid-template-rows: 1fr 1fr; width: 100%; height: 100%; background-color: var(--color-fill-contrast); transition: opacity var(--transition-duration-3) ease-in-out, transform var(--transition-duration-3) ease-in-out, visibility var(--transition-duration-3) ease-in-out; } lr-editor-toolbar > .toolbar-container > .sub-toolbar.sub-toolbar--visible { transform: translateY(0px); opacity: 1; pointer-events: auto; } lr-editor-toolbar > .toolbar-container > .sub-toolbar.sub-toolbar--top-hidden { transform: translateY(100%); opacity: 0; pointer-events: none; } lr-editor-toolbar > .toolbar-container > .sub-toolbar.sub-toolbar--bottom-hidden { transform: translateY(-100%); opacity: 0; pointer-events: none; } lr-editor-toolbar > .toolbar-container > .sub-toolbar > .controls-row { display: flex; align-items: center; justify-content: space-between; padding-right: var(--l-controls-padding); padding-left: var(--l-controls-padding); } lr-editor-toolbar > .toolbar-container > .sub-toolbar > .controls-row > .tab-toggles { position: relative; display: grid; grid-auto-flow: column; grid-gap: 0px var(--l-tab-gap); align-items: center; height: 100%; } lr-editor-toolbar > .toolbar-container > .sub-toolbar > .controls-row > .tab-toggles > .tab-toggles_indicator { position: absolute; bottom: 0px; left: 0px; width: var(--size-touch-area); height: 2px; background-color: var(--color-primary-accent); transform: translateX(0px); transition: transform var(--transition-duration-3); } lr-editor-toolbar > .toolbar-container > .sub-toolbar > .tab-content-row { position: relative; } lr-editor-toolbar > .toolbar-container > .sub-toolbar > .tab-content-row > .tab-content { position: absolute; top: 0px; left: 0px; display: flex; width: 100%; height: 100%; overflow: hidden; opacity: 0; content-visibility: auto; } lr-editor-toolbar > .toolbar-container > .sub-toolbar > .tab-content-row > .tab-content.tab-content--visible { opacity: 1; pointer-events: auto; } lr-editor-toolbar > .toolbar-container > .sub-toolbar > .tab-content-row > .tab-content.tab-content--hidden { opacity: 0; pointer-events: none; } lr-editor-toolbar > .toolbar-container > .sub-toolbar > .tab-content-row > .tab-content .controls-list_align { display: grid; grid-template-areas: '. inner .'; grid-template-columns: 1fr auto 1fr; box-sizing: border-box; min-width: 100%; padding-left: var(--gap-max); } lr-editor-toolbar > .toolbar-container > .sub-toolbar > .tab-content-row > .tab-content .controls-list_inner { display: grid; grid-area: inner; grid-auto-flow: column; grid-gap: calc((var(--gap-min) - 1px) * 3); } lr-editor-toolbar > .toolbar-container > .sub-toolbar > .tab-content-row > .tab-content .controls-list_inner:last-child { padding-right: var(--gap-max); } lr-editor-toolbar .controls-list_last-item { margin-right: var(--gap-max); } lr-editor-toolbar .filter-tooltip_container { position: absolute; display: flex; align-items: flex-start; justify-content: center; width: 100%; height: 100%; } lr-editor-toolbar .filter-tooltip_wrapper { position: absolute; top: calc(-100% - var(--gap-mid-2)); display: flex; flex-direction: column; justify-content: flex-end; height: 100%; pointer-events: none; } lr-editor-toolbar .filter-tooltip { z-index: 3; padding-top: calc(var(--gap-min) / 2); padding-right: var(--gap-min); padding-bottom: calc(var(--gap-min) / 2); padding-left: var(--gap-min); color: var(--color-text-base); font-size: 0.7em; letter-spacing: 1px; text-transform: uppercase; background-color: var(--color-text-accent-contrast); border-radius: var(--border-radius-editor); opacity: 0; transition: var(--transition-duration-3); } lr-editor-toolbar .filter-tooltip_visible { transform: translateY(0px); opacity: 1; } lr-editor-toolbar .filter-tooltip_hidden { transform: translateY(100%); opacity: 0; } lr-editor-toolbar .slider { padding-right: var(--l-slider-padding); padding-left: var(--l-slider-padding); } lr-btn-ui { --filter-effect: var(--idle-brightness); --opacity-effect: var(--idle-opacity); --color-effect: var(--idle-color-rgb); --l-transition-effect: var(--css-transition, color var(--transition-duration-2), filter var(--transition-duration-2)); display: inline-flex; align-items: center; box-sizing: var(--css-box-sizing, border-box); height: var(--css-height, var(--size-touch-area)); padding-right: var(--css-padding-right, var(--gap-mid-1)); padding-left: var(--css-padding-left, var(--gap-mid-1)); color: rgba(var(--color-effect), var(--opacity-effect)); outline: none; cursor: pointer; filter: brightness(var(--filter-effect)); transition: var(--l-transition-effect); user-select: none; } lr-btn-ui .text { white-space: nowrap; } lr-btn-ui .icon { display: flex; align-items: center; justify-content: center; color: rgba(var(--color-effect), var(--opacity-effect)); filter: brightness(var(--filter-effect)); transition: var(--l-transition-effect); } lr-btn-ui .icon_left { margin-right: var(--gap-mid-1); margin-left: 0px; } lr-btn-ui .icon_right { margin-right: 0px; margin-left: var(--gap-mid-1); } lr-btn-ui .icon_single { margin-right: 0px; margin-left: 0px; } lr-btn-ui .icon_hidden { display: none; margin: 0; } lr-btn-ui.primary { --idle-color-rgb: var(--rgb-primary-accent); --idle-brightness: 1; --idle-opacity: 0.6; --hover-color-rgb: var(--idle-color-rgb); --hover-brightness: 1; --hover-opacity: 1; --down-color-rgb: var(--hover-color-rgb); --down-brightness: 0.75; --down-opacity: 1; --active-color-rgb: var(--rgb-primary-accent); --active-brightness: 1; --active-opacity: 1; } lr-btn-ui.boring { --idle-color-rgb: var(--rgb-text-base); --idle-brightness: 1; --idle-opacity: 0.6; --hover-color-rgb: var(--rgb-text-base); --hover-brightness: 1; --hover-opacity: 1; --down-color-rgb: var(--hover-color-rgb); --down-brightness: 1; --down-opacity: 1; --active-color-rgb: var(--rgb-primary-accent); --active-brightness: 1; --active-opacity: 1; } lr-btn-ui.default { --idle-color-rgb: var(--rgb-text-base); --idle-brightness: 1; --idle-opacity: 0.6; --hover-color-rgb: var(--rgb-primary-accent); --hover-brightness: 1; --hover-opacity: 1; --down-color-rgb: var(--hover-color-rgb); --down-brightness: 0.75; --down-opacity: 1; --active-color-rgb: var(--rgb-primary-accent); --active-brightness: 1; --active-opacity: 1; } lr-line-loader-ui { position: absolute; top: 0px; left: 0px; z-index: 9999; width: 100%; height: 2px; opacity: 0.5; } lr-line-loader-ui .inner { width: 25%; max-width: 200px; height: 100%; } lr-line-loader-ui .line { width: 100%; height: 100%; background-color: var(--color-primary-accent); transform: translateX(-101%); transition: transform 1s; } lr-slider-ui { --l-thumb-size: 24px; --l-zero-dot-size: 5px; --l-zero-dot-offset: 2px; --idle-color-rgb: var(--rgb-text-base); --hover-color-rgb: var(--rgb-primary-accent); --down-color-rgb: var(--rgb-primary-accent); --color-effect: var(--idle-color-rgb); --l-color: rgb(var(--color-effect)); position: relative; display: flex; align-items: center; justify-content: center; width: 100%; height: calc(var(--l-thumb-size) + (var(--l-zero-dot-size) + var(--l-zero-dot-offset)) * 2); } lr-slider-ui .thumb { position: absolute; left: 0px; width: var(--l-thumb-size); height: var(--l-thumb-size); background-color: var(--l-color); border-radius: 50%; transform: translateX(0px); opacity: 1; transition: opacity var(--transition-duration-2); } lr-slider-ui .steps { position: absolute; display: flex; align-items: center; justify-content: space-between; box-sizing: border-box; width: 100%; height: 100%; padding-right: calc(var(--l-thumb-size) / 2); padding-left: calc(var(--l-thumb-size) / 2); } lr-slider-ui .border-step { width: 0px; height: 10px; border-right: 1px solid var(--l-color); opacity: 0.6; transition: var(--transition-duration-2); } lr-slider-ui .minor-step { width: 0px; height: 4px; border-right: 1px solid var(--l-color); opacity: 0.2; transition: var(--transition-duration-2); } lr-slider-ui .zero-dot { position: absolute; top: calc(100% - var(--l-zero-dot-offset) * 2); left: calc(var(--l-thumb-size) / 2 - var(--l-zero-dot-size) / 2); width: var(--l-zero-dot-size); height: var(--l-zero-dot-size); background-color: var(--color-primary-accent); border-radius: 50%; opacity: 0; transition: var(--transition-duration-3); } lr-slider-ui .input { position: absolute; width: calc(100% - 10px); height: 100%; margin: 0; cursor: pointer; opacity: 0; } lr-presence-toggle.transition { transition: opacity var(--transition-duration-3), visibility var(--transition-duration-3); } lr-presence-toggle.visible { opacity: 1; pointer-events: inherit; } lr-presence-toggle.hidden { opacity: 0; pointer-events: none; } /* TODO: remove ctx-provider */ /* stylelint-disable-next-line plugin/stylelint-force-app-name-prefix */ ctx-provider { --color-text-base: black; --color-primary-accent: blue; display: flex; align-items: center; justify-content: center; width: 190px; height: 40px; padding-right: 10px; padding-left: 10px; background-color: #f5f5f5; border-radius: 3px; }