UNPKG

@uploadcare/blocks

Version:

Building blocks for Uploadcare products integration

182 lines (146 loc) 6.08 kB
:where(.lr-wgt-theme, .lr-wgt-common, ::backdrop), :host { /* Base values */ --darkmode: 0; --h-foreground: 208; --s-foreground: 4%; --l-foreground: calc(15% + 70% * var(--darkmode)); --h-background: 208; --s-background: 4%; --l-background: calc(95% - 87% * var(--darkmode)); --h-accent: 211; --s-accent: 100%; --l-accent: calc(50% - 5% * var(--darkmode)); --h-confirm: 140; --s-confirm: 60%; --l-confirm: 60%; --h-error: 358; --s-error: 100%; --l-error: 66%; --shadows: 1; --h-shadow: 0; --s-shadow: 0%; --l-shadow: 0%; --opacity-normal: 0.5; --opacity-hover: 0.8; --opacity-active: 1; --ui-size: 36px; --gap-min: 2px; --gap-mid: 10px; --gap-max: 20px; --gap-table: 0px; --borders: 1; --border-radius-element: 7px; --border-radius-frame: 10px; --border-radius-thumb: 5px; --transition-duration: 0.2s; --modal-max-w: 800px; --modal-max-h: 600px; --modal-backdrop-background-image: url('data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjEwIiB3aWR0aD0iMTAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CiAgPHBhdGggc3Ryb2tlPSJyZ2JhKDAsIDAsIDAsIC4xKSIgZD0iTTAgMTAgMTAgMCIvPgo8L3N2Zz4='); /* Derivative values */ --darkmode-minus: calc(1 + var(--darkmode) * -2); --clr-background: hsl(var(--h-background), var(--s-background), var(--l-background)); --clr-background-dark: hsl(var(--h-background), var(--s-background), calc(var(--l-background) - 3%)); --clr-background-light: hsl(var(--h-background), var(--s-background), calc(var(--l-background) + 3%)); --clr-generic-file-icon: hsl( var(--h-background), var(--s-background), calc(var(--l-background) + 4% * var(--darkmode-minus)) ); --clr-accent: hsl(var(--h-accent), var(--s-accent), var(--l-accent)); --clr-accent-light: hsla(var(--h-accent), var(--s-accent), var(--l-accent), 50%); --clr-accent-lightest: hsla(var(--h-accent), var(--s-accent), var(--l-accent), 10%); --clr-confirm: hsl(var(--h-confirm), var(--s-confirm), var(--l-confirm)); --clr-error: hsl(var(--h-error), var(--s-error), var(--l-error)); --clr-error-light: hsla(var(--h-error), var(--s-error), var(--l-error), 15%); --clr-error-lightest: hsla(var(--h-error), var(--s-error), var(--l-error), 5%); --clr-error-message-bgr: hsl(var(--h-error), var(--s-error), calc(var(--l-error) + 30% * var(--darkmode-minus))); --clr-txt: hsl(var(--h-foreground), var(--s-foreground), var(--l-foreground)); --clr-txt-mid: hsl(var(--h-foreground), var(--s-foreground), calc(var(--l-foreground) + 15% * var(--darkmode-minus))); --clr-txt-light: hsl( var(--h-foreground), var(--s-foreground), calc(var(--l-foreground) + 30% * var(--darkmode-minus)) ); --clr-txt-lightest: hsl( var(--h-foreground), var(--s-foreground), calc(var(--l-foreground) + 50% * var(--darkmode-minus)) ); --clr-shade-lv1: hsla(var(--h-foreground), var(--s-foreground), var(--l-foreground), 5%); --clr-shade-lv2: hsla(var(--h-foreground), var(--s-foreground), var(--l-foreground), 8%); --clr-shade-lv3: hsla(var(--h-foreground), var(--s-foreground), var(--l-foreground), 12%); --border-light: 1px solid hsla( var(--h-foreground), var(--s-foreground), var(--l-foreground), calc((0.1 - 0.05 * var(--darkmode)) * var(--borders)) ); --border-mid: 1px solid hsla( var(--h-foreground), var(--s-foreground), var(--l-foreground), calc((0.2 - 0.1 * var(--darkmode)) * var(--borders)) ); --border-accent: 1px solid hsla(var(--h-accent), var(--s-accent), var(--l-accent), 1 * var(--borders)); --border-dashed: 2px dashed hsla(var(--h-foreground), var(--s-foreground), var(--l-foreground), calc(0.1 * var(--borders))); --clr-curtain: hsla(var(--h-background), var(--s-background), calc(var(--l-background) - 10%), 70%); --hsl-shadow: var(--h-shadow), var(--s-shadow), var(--l-shadow); --modal-shadow: 0px 0px 1px hsla(var(--hsl-shadow), calc((0.35 + 0.65 * var(--darkmode)) * var(--shadows))), 0px 6px 40px hsla(var(--hsl-shadow), calc((0.2 + 0.4 * var(--darkmode)) * var(--shadows))); --inset-shadow: inset 0px 2px 3px hsla(var(--hsl-shadow), calc(0.09 + 0.1 * var(--darkmode))); /* Maybe move directly to the styles of the buttons? */ --clr-btn-bgr-primary: var(--clr-accent); --clr-btn-bgr-primary-hover: hsl( var(--h-accent), var(--s-accent), calc(var(--l-accent) - 4% * var(--darkmode-minus)) ); --clr-btn-bgr-primary-active: hsl( var(--h-accent), var(--s-accent), calc(var(--l-accent) - 8% * var(--darkmode-minus)) ); --clr-btn-txt-primary: var(--clr-background-light); --shadow-btn-primary: 0px 1px 2px hsla(var(--hsl-shadow), calc(0.26 * var(--shadows))), 0px 2px 8px hsla(var(--hsl-shadow), calc(0.08 * var(--shadows))), inset 0px 0px 2px hsla(var(--hsl-shadow), calc(0.2 * var(--shadows))); --clr-btn-bgr-secondary: hsl( var(--h-background), var(--s-background), calc(var(--l-background) + 3% + 3% * var(--darkmode)) ); --clr-btn-bgr-secondary-hover: hsl( var(--h-background), var(--s-background), calc(var(--l-background) + 8% * var(--darkmode)) ); --clr-btn-bgr-secondary-active: hsl( var(--h-background), var(--s-background), calc(var(--l-background) - 3% + 13% * var(--darkmode)) ); --clr-btn-txt-secondary: var(--clr-txt); --shadow-btn-secondary: 0px 1px 1px hsla(var(--hsl-shadow), calc(0.07 * var(--shadows))), 0px 2px 8px hsla(var(--hsl-shadow), calc(0.06 * var(--shadows))), inset 0px 0px 1px hsla(var(--hsl-shadow), calc(0.4 * var(--shadows))); --clr-btn-bgr-disabled: var(--clr-background); --clr-btn-txt-disabled: var(--clr-txt-lightest); --shadow-btn-disabled: inset 0px 0px 1px hsla(var(--hsl-shadow), calc(0.4 * var(--shadows))); } @media only screen and (max-height: 600px) { :where(.lr-wgt-theme, .lr-wgt-common), :host { --modal-max-h: 100%; } } @media only screen and (max-width: 800px) { :where(.lr-wgt-theme, .lr-wgt-common), :host { --modal-max-w: 100%; --modal-max-h: 100%; } }