epam-assets/theme/variables/promo.scss (480 lines of code) (raw):

@use 'tokens/_theme_promo.scss' as tokens; /* Name convention */ /* --uui-'component name or group of components name'-'styled part name'-'states(optional)'-'hover/active/focus(optional)' */ @mixin promo_variables { --uui-font: 'Source Sans Pro', sans-serif; --uui-font-mono: 'Roboto Mono', monospace; // theme specific fonts --font-museo-sans: 'Museo Sans', 'Source Sans Pro', Arial, sans-serif; --font-museo-slab: 'Museo Slab', 'Roboto Slab', Arial, sans-serif; /* shadows */ --uui-shadow-level-1: 0 0 3px rgba(29, 30, 38, 0.05), 0 3px 6px rgba(29, 30, 38, 0.1); --uui-shadow-level-2: 0 6px 12px rgba(29, 30, 38, 0.05), 0 3px 12px rgba(29, 30, 38, 0.1), 0 0 6px rgba(29, 30, 38, 0.05); --uui-shadow-level-3: 0 0 10px rgba(29, 30, 38, 0.05), 0 6px 36px rgba(29, 30, 38, 0.12), 0 9px 15px rgba(29, 30, 38, 0.05); @include tokens.theme-tokens; & { --uui-border-radius: 0; } /* begin color classes */ .uui-color-green { --uui-color-5: var(--uui-accent-5); --uui-color-10: var(--uui-accent-10); --uui-color-20: var(--uui-accent-20); --uui-color-50: var(--uui-accent-50); --uui-color-60: var(--uui-accent-60); --uui-color-70: var(--uui-accent-70); --uui-color-contrast: var(--uui-accent-contrast); } .uui-color-blue { --uui-color-5: var(--uui-primary-5); --uui-color-10: var(--uui-primary-10); --uui-color-20: var(--uui-primary-20); --uui-color-50: var(--uui-primary-50); --uui-color-60: var(--uui-primary-60); --uui-color-70: var(--uui-primary-70); --uui-color-contrast: var(--uui-primary-contrast); } .uui-color-gray { --uui-color-5: var(--uui-secondary-5); --uui-color-10: var(--uui-secondary-10); --uui-color-20: var(--uui-secondary-20); --uui-color-50: var(--uui-secondary-50); --uui-color-60: var(--uui-secondary-60); --uui-color-70: var(--uui-secondary-70); --uui-color-contrast: var(--uui-secondary-contrast); } .uui-color-red { --uui-color-5: var(--uui-critical-5); --uui-color-10: var(--uui-critical-10); --uui-color-20: var(--uui-critical-20); --uui-color-50: var(--uui-critical-50); --uui-color-60: var(--uui-critical-60); --uui-color-70: var(--uui-critical-70); --uui-color-contrast: var(--uui-critical-contrast); } .uui-color-amber { --uui-color-5: var(--uui-warning-5); --uui-color-10: var(--uui-warning-10); --uui-color-20: var(--uui-warning-20); --uui-color-50: var(--uui-warning-50); --uui-color-60: var(--uui-warning-60); --uui-color-70: var(--uui-warning-70); --uui-color-contrast: var(--uui-warning-contrast); } .uui-link_button.uui-color-contrast, .uui-color-gray10 { --uui-color-5: var(--white); --uui-color-10: var(--white); --uui-color-20: var(--gray5); --uui-color-50: var(--gray10); --uui-color-60: var(--gray20); --uui-color-70: var(--gray30); --uui-color-contrast: var(--gray70); } .uui-color-gray30 { --uui-color-5: var(--gray20); --uui-color-10: var(--gray30); --uui-color-20: var(--gray40); --uui-color-50: var(--gray30); --uui-color-60: var(--gray40); --uui-color-70: var(--gray50); --uui-color-contrast: var(--gray80); } .uui-color-gray50 { --uui-color-5: var(--gray5); --uui-color-10: var(--gray10); --uui-color-20: var(--gray20); --uui-color-50: var(--gray50); --uui-color-60: var(--gray60); --uui-color-70: var(--gray70); --uui-color-contrast: var(--gray80); } .uui-color-gray60 { --uui-color-5: var(--gray20); --uui-color-10: var(--gray60); --uui-color-20: var(--gray40); --uui-color-50: var(--gray60); --uui-color-60: var(--gray70); --uui-color-70: var(--gray80); --uui-color-contrast: var(--white); } .uui-color-yellow { --uui-color-5: var(--yellow-5); --uui-color-10: var(--yellow-10); --uui-color-20: var(--yellow-20); --uui-color-50: var(--yellow-50); --uui-color-60: var(--yellow-60); --uui-color-70: var(--yellow-70); --uui-color-contrast: var(--gray80); } .uui-color-orange { --uui-color-5: var(--orange-5); --uui-color-10: var(--orange-10); --uui-color-20: var(--orange-20); --uui-color-50: var(--orange-50); --uui-color-60: var(--orange-60); --uui-color-70: var(--orange-70); --uui-color-contrast: var(--gray80); } .uui-color-fuchsia { --uui-color-5: var(--fuchsia-5); --uui-color-10: var(--fuchsia-10); --uui-color-20: var(--fuchsia-20); --uui-color-50: var(--fuchsia-50); --uui-color-60: var(--fuchsia-60); --uui-color-70: var(--fuchsia-70); --uui-color-contrast: var(--white); } .uui-color-purple { --uui-color-5: var(--purple-5); --uui-color-10: var(--purple-10); --uui-color-20: var(--purple-20); --uui-color-50: var(--purple-50); --uui-color-60: var(--purple-60); --uui-color-70: var(--purple-70); --uui-color-contrast: var(--white); } .uui-color-violet { --uui-color-5: var(--violet-5); --uui-color-10: var(--violet-10); --uui-color-20: var(--violet-20); --uui-color-50: var(--violet-50); --uui-color-60: var(--violet-60); --uui-color-70: var(--violet-70); --uui-color-contrast: var(--white); } .uui-color-cobalt { --uui-color-5: var(--cobalt-5); --uui-color-10: var(--cobalt-10); --uui-color-20: var(--cobalt-20); --uui-color-50: var(--cobalt-50); --uui-color-60: var(--cobalt-60); --uui-color-70: var(--cobalt-70); --uui-color-contrast: var(--white); } .uui-color-cyan { --uui-color-5: var(--cyan-5); --uui-color-10: var(--cyan-10); --uui-color-20: var(--cyan-20); --uui-color-50: var(--cyan-50); --uui-color-60: var(--cyan-60); --uui-color-70: var(--cyan-70); --uui-color-contrast: var(--gray80); } .uui-color-mint { --uui-color-5: var(--mint-5); --uui-color-10: var(--mint-10); --uui-color-20: var(--mint-20); --uui-color-50: var(--mint-50); --uui-color-60: var(--mint-60); --uui-color-70: var(--mint-70); --uui-color-contrast: var(--gray80); } /* Badge */ .uui-badge.uui-color-white { &.uui-fill-solid { --uui-badge-bg-hover: var(--uui-neutral-30); --uui-badge-border-hover: var(--uui-neutral-30); } &.uui-fill-outline { --uui-badge-bg: var(--uui-neutral-0); --uui-badge-bg-hover: var(--uui-neutral-10); --uui-badge-border: var(--uui-neutral-30); --uui-badge-border-hover: var(--uui-neutral-30); --uui-badge-caption: var(--uui-neutral-80); --uui-badge-caption-hover: var(--uui-neutral-80); .uui-count_indicator { --uui-count_indicator-bg: color-mix(in srgb, var(--uui-badge-caption) 8%, transparent); --uui-count_indicator-border: color-mix(in srgb, var(--uui-badge-caption) 40%, transparent); } } } .uui-badge.uui-color-neutral, .uui-badge.uui-color-gray30 { &.uui-fill-solid { --uui-badge-bg: var(--uui-neutral-30); --uui-badge-bg-hover: var(--uui-neutral-40); --uui-badge-border: var(--uui-neutral-30); --uui-badge-border-hover: var(--uui-neutral-40); --uui-color-contrast: var(--uui-neutral-80); .uui-count_indicator { --uui-count_indicator-bg: var(--uui-neutral-0); --uui-count_indicator-border: var(--uui-neutral-0); } } &.uui-fill-outline { --uui-badge-bg: var(--uui-neutral-20); --uui-badge-border: var(--uui-neutral-40); --uui-badge-border-hover: var(--uui-neutral-40); --uui-badge-bg-hover: var(--uui-neutral-30); --uui-badge-caption: var(--uui-neutral-80); --uui-badge-caption-hover: var(--uui-neutral-80); } } .uui-badge.uui-color-gray10 { &.uui-fill-solid { --uui-badge-bg-hover: var(--uui-neutral-20); --uui-badge-border-hover: var(--uui-neutral-20); } &.uui-fill-outline { --uui-badge-bg: var(--uui-neutral-10); --uui-badge-bg-hover: var(--uui-neutral-20); --uui-badge-border: var(--uui-neutral-30); --uui-badge-border-hover: var(--uui-neutral-30); --uui-badge-caption: var(--uui-neutral-70); --uui-badge-caption-hover: var(--uui-neutral-70); .uui-count_indicator { --uui-count_indicator-bg: color-mix(in srgb, var(--uui-badge-caption) 8%, transparent); --uui-count_indicator-border: color-mix(in srgb, var(--uui-badge-caption) 40%, transparent); } } } .uui-badge.uui-color-gray60 { &.uui-fill-outline { --uui-badge-bg-hover: var(--uui-neutral-30); --uui-badge-border: var(--uui-neutral-60); --uui-badge-border-hover: var(--uui-neutral-60); --uui-badge-caption: var(--uui-neutral-80); --uui-badge-caption-hover: var(--uui-neutral-80); } } .uui-badge.uui-color-yellow.uui-fill-outline { --uui-badge-border: var(--yellow-20); } /* Button */ .uui-button:is(.uui-color-secondary, .uui-color-neutral, .uui-color-gray, .uui-color-gray50, .uui-color-gray60):is(.uui-fill-outline, .uui-fill-none, .uui-fill-ghost) { --uui-btn-caption: var(--uui-neutral-70); } .uui-button { &.uui-size-42, &.uui-size-48 { .uui-caption { font-family: var(--font-museo-sans); } } } /* IconButton */ .uui-icon_button.uui-color-neutral, .uui-icon_button.uui-color-gray60 { --uui-icon_btn: var(--uui-neutral-60); --uui-icon_btn-hover: var(--uui-neutral-70); --uui-icon_btn-active: var(--uui-neutral-80); } .uui-icon_button.uui-color-secondary { --uui-icon_btn: var(--uui-neutral-50); --uui-icon_btn-hover: var(--uui-neutral-60); --uui-icon_btn-active: var(--uui-neutral-70); } .uui-icon_button.uui-color-white { --uui-icon_btn-hover: var(--uui-neutral-20); --uui-icon_btn-active: var(--uui-neutral-30); } /* LinkButton */ .uui-link_button.uui-color-white { --uui-link_btn-text-hover: var(--uui-neutral-30); --uui-link_btn-text-active: var(--uui-neutral-40); --uui-link_btn-text-disabled: color-mix(in srgb, var(--white) 40%, transparent); } /* Tooltip */ .uui-tooltip-container.uui-color-white { --uui-tooltip-bg: var(--uui-neutral-0); --uui-tooltip-text: var(--uui-neutral-80); } .uui-tooltip-container.uui-color-red { --uui-tooltip-bg: var(--uui-critical-60); } .uui-tooltip-container.uui-color-gray { --uui-tooltip-bg: var(--uui-neutral-80); --uui-tooltip-text: var(--uui-neutral-5); } /* CountIndicator */ .uui-count_indicator.uui-color-gray, .uui-count_indicator.uui-color-neutral { --uui-count_indicator-bg: var(--uui-neutral-30); --uui-count_indicator-border: var(--uui-neutral-30); } .uui-count_indicator:is(.uui-color-gray, .uui-color-neutral, .uui-color-white, .uui-color-amber, .uui-color-warning) { --uui-count_indicator-caption: var(--uui-neutral-70); } /* Status Indicator */ .uui-status_indicator.uui-color-white.uui-fill-outline { .uui-status_indicator-dot { background-color: color-mix(in srgb, var(--white) 20%, transparent); border: 1px solid var(--uui-neutral-40); } } /* FlexRow */ .uui-flex-row.uui-color-none { --uui-flex-row-bg: transparent; } .uui-flex-row.uui-color-white { --uui-flex-row-bg: var(--white); } .uui-flex-row.uui-color-gray5 { --uui-flex-row-bg: var(--gray5); } .uui-panel.uui-color-white { --uui-panel-bg: var(--white); } .uui-panel.uui-color-gray90 { --uui-panel-bg: var(--gray90); } /* Text */ .uui-text.uui-color-gray5 { --uui-text: var(--gray5); } .uui-text.uui-color-gray80 { --uui-text: var(--gray80); } .uui-text.uui-color-gray90 { --uui-text: var(--gray90); } .uui-text.uui-color-blue { --uui-text: var(--blue-70); } .uui-text.uui-color-green { --uui-text: var(--green-70); } .uui-text.uui-color-amber { --uui-text: var(--amber-70); } .uui-text.uui-color-red { --uui-text: var(--red-70); } /* Tag */ .uui-tag { --uui-border-radius: 3px; &.uui-color-white { &.uui-fill-solid { --uui-tag-bg-hover: var(--uui-neutral-10); --uui-tag-border-hover: var(--uui-neutral-10); .uui-count_indicator { --uui-count_indicator-bg: var(--uui-neutral-30); --uui-count_indicator-border: var(--uui-neutral-30); } } &.uui-fill-outline { --uui-tag-bg: var(--uui-neutral-0); --uui-tag-border: var(--uui-neutral-30); --uui-tag-bg-hover: var(--uui-neutral-10); --uui-tag-border-hover: var(--uui-neutral-30); .uui-count_indicator { --uui-count_indicator-bg: var(--uui-neutral-30); --uui-count_indicator-border: var(--uui-neutral-30); } } } &.uui-color-gray10 { &.uui-fill-solid { --uui-tag-bg-hover: var(--uui-neutral-20); --uui-tag-border-hover: var(--uui-neutral-20); .uui-count_indicator { --uui-count_indicator-bg: var(--uui-neutral-30); --uui-count_indicator-border: var(--uui-neutral-30); } } &.uui-fill-outline { --uui-tag-bg: var(--uui-neutral-5); --uui-tag-bg-hover: var(--uui-neutral-10); --uui-tag-border: var(--uui-neutral-30); --uui-tag-border-hover: var(--uui-neutral-30); .uui-count_indicator { --uui-count_indicator-bg: var(--uui-neutral-30); --uui-count_indicator-border: var(--uui-neutral-30); } } } &.uui-color-neutral, &.uui-color-gray30 { &.uui-fill-solid { --uui-tag-bg: var(--uui-neutral-30); --uui-tag-bg-hover: var(--uui-neutral-40); --uui-tag-border: var(--uui-neutral-30); --uui-tag-border-hover: var(--uui-neutral-40); --uui-tag-caption: var(--uui-neutral-70); --uui-tag-fill: var(--uui-neutral-70); .uui-count_indicator { --uui-count_indicator-bg: var(--uui-neutral-0); --uui-count_indicator-border: var(--uui-neutral-0); --uui-count_indicator-caption: var(--uui-neutral-70); } } &.uui-fill-outline { --uui-tag-bg: var(--uui-neutral-20); --uui-tag-bg-hover: var(--uui-neutral-30); --uui-tag-border: var(--uui-neutral-40); --uui-tag-border-hover: var(--uui-neutral-40); .uui-count_indicator { --uui-count_indicator-bg: var(--uui-neutral-30); --uui-count_indicator-border: var(--uui-neutral-30); } } } &.uui-color-gray70 { &.uui-fill-solid { --uui-tag-caption: var(--uui-neutral-0); --uui-tag-fill: var(--uui-neutral-0); --uui-tag-bg: var(--uui-neutral-70); --uui-tag-border: var(--uui-neutral-70); --uui-tag-bg-hover: var(--uui-neutral-80); --uui-tag-border-hover: var(--uui-neutral-80); .uui-count_indicator { --uui-count_indicator-border: color-mix(in srgb, var(--uui-neutral-0) 50%, transparent); --uui-count_indicator-bg: color-mix(in srgb, var(--uui-neutral-0) 10%, transparent); --uui-count_indicator-caption: var(--uui-neutral-0); } } &.uui-fill-outline { --uui-tag-bg: var(--uui-neutral-20); --uui-tag-bg-hover: var(--uui-neutral-30); --uui-tag-border: var(--uui-neutral-50); --uui-tag-border-hover: var(--uui-neutral-50); } } &.uui-color-warning, &.uui-color-amber { &.uui-fill-solid { --uui-tag-caption: var(--uui-text-primary); --uui-tag-fill: var(--uui-neutral-90); .uui-count_indicator { --uui-count_indicator-bg: color-mix(in srgb, var(--uui-neutral-90) 5%, transparent); --uui-count_indicator-border: color-mix(in srgb, var(--uui-neutral-90) 30%, transparent); } } &.uui-fill-outline .uui-count_indicator { --uui-count_indicator-bg: var(--uui-neutral-0); --uui-count_indicator-border: var(--uui-neutral-40); } } } .uui-dropdown-body { --uui-dropdown_container-border-radius: 0; } .uui-link_button { &.uui-size-42, &.uui-size-48 { :global(.uui-caption) { font-family: var(--font-museo-sans); text-transform: uppercase; } } } /* fonts */ .uui-font-sans { --uui-text-font: var(--uui-font); --uui-text-font-weight: 400; } .uui-font-sans-semibold { --uui-text-font: var(--uui-font); --uui-text-font-weight: 600; } .uui-font-sans-italic { --uui-text-font: var(--uui-font); --uui-text-font-weight: 400; --uui-text-font-style: italic; } .uui-font-museo-sans { --uui-text-font: var(--font-museo-sans); --uui-text-font-weight: normal; } .uui-font-museo-slab { --uui-text-font: var(--font-museo-slab); --uui-text-font-weight: normal; } /* Typography */ .uui-typography { h1, h2, h3 { font-family: var(--font-museo-sans); } h1 { font-size: 36px; } .hero-header { font-family: var(--font-museo-slab); } .promo-header:is(h1, h2, h3) { font-family: var(--font-museo-sans); } } }