diff --git a/app/src/docs/RichTextEditor.doc.tsx b/app/src/docs/RichTextEditor.doc.tsx
index d072d1a462..e3425442dd 100644
--- a/app/src/docs/RichTextEditor.doc.tsx
+++ b/app/src/docs/RichTextEditor.doc.tsx
@@ -1,16 +1,14 @@
import * as React from 'react';
-import cx from 'classnames';
import { BaseDocsBlock, DocExample } from '../common';
-import css from './styles.module.scss';
export class RichTextEditorDoc extends BaseDocsBlock {
title = 'Rich Text Editor';
renderContent() {
return (
-
+ <>
-
+ >
);
}
}
diff --git a/app/src/docs/RichTextEditorSerializers.doc.tsx b/app/src/docs/RichTextEditorSerializers.doc.tsx
index 7ceebc3c8b..066ff68293 100644
--- a/app/src/docs/RichTextEditorSerializers.doc.tsx
+++ b/app/src/docs/RichTextEditorSerializers.doc.tsx
@@ -1,16 +1,14 @@
import * as React from 'react';
-import cx from 'classnames';
import { BaseDocsBlock, DocExample } from '../common';
-import css from './styles.module.scss';
export class RichTextEditorSerializersDoc extends BaseDocsBlock {
title = 'Rich Text Editor Serializers';
renderContent() {
return (
-
+ <>
-
+ >
);
}
}
diff --git a/app/src/docs/SliderRating.doc.tsx b/app/src/docs/SliderRating.doc.tsx
index 947fcff6e8..842998d442 100644
--- a/app/src/docs/SliderRating.doc.tsx
+++ b/app/src/docs/SliderRating.doc.tsx
@@ -3,8 +3,6 @@ import * as loveship from '@epam/loveship';
import * as uui from '@epam/uui';
import { DocBuilder, TDocConfig, TDocContext, TSkin } from '@epam/uui-docs';
import { BaseDocsBlock, DocExample, EditableDocContent } from '../common';
-import cx from 'classnames';
-import css from './styles.module.scss';
export class SliderRatingDoc extends BaseDocsBlock {
title = 'SliderRating';
@@ -37,11 +35,11 @@ export class SliderRatingDoc extends BaseDocsBlock {
renderContent() {
return (
-
+ <>
{this.renderSectionTitle('Examples')}
-
+ >
);
}
}
diff --git a/app/src/docs/styles.module.scss b/app/src/docs/styles.module.scss
index bc2f8255b1..1fa1c1ac85 100644
--- a/app/src/docs/styles.module.scss
+++ b/app/src/docs/styles.module.scss
@@ -1,13 +1,3 @@
-@use '~@epam/assets/theme/theme_promo' as *;
-
-.wrapper {
- &.uui-theme-promo {
- :global {
- @include theme-promo();
- }
- }
-}
-
.app-bg {
--uui-docs-bg: var(--uui-app-bg);
}
\ No newline at end of file
diff --git a/app/src/sandbox/RTE/rteDemo.module.scss b/app/src/sandbox/RTE/rteDemo.module.scss
index 1ba88bf0ae..1da21fe449 100644
--- a/app/src/sandbox/RTE/rteDemo.module.scss
+++ b/app/src/sandbox/RTE/rteDemo.module.scss
@@ -1,14 +1,6 @@
-@use '~@epam/assets/theme/theme_promo' as *;
-
.wrapper {
flex-grow: 1;
margin: 24px;
-
- &.uui-theme-promo {
- :global {
- @include theme-promo();
- }
- }
}
.icon-wrapper {
diff --git a/app/src/sandbox/SandboxPage.tsx b/app/src/sandbox/SandboxPage.tsx
index 37a0e73ab0..f47c296fba 100644
--- a/app/src/sandbox/SandboxPage.tsx
+++ b/app/src/sandbox/SandboxPage.tsx
@@ -8,7 +8,6 @@ import { PersonsTableDemo } from './tables/PersonsTableDemo';
import { DemoTablePaged } from './tablePaged';
import { DraftRTEDemo } from './draft-rte/DraftRTEDemo';
import { ScrollSpyDemo } from './scroll-spy/ScrollSpyDemo';
-import { Responsive } from './responsive/Responsive';
import { ThemeDemo } from './theme/ThemeDemo';
import { ThemeElectricDemo } from './theme-electric-test/ThemeDemo';
import { ProductsTableDemo } from './productsTable/ProductsTableDemo';
@@ -19,7 +18,6 @@ import { Skills } from './skills';
import TableCellsStylesSandbox from './tableCellStyles/TableCellsStylesSandbox';
import { ProjectTasksDemo } from './tasks/ProjectTasksDemo';
import { RichTextEditorDemo } from './RTE/rteDemo';
-import { TableColumnConfigModalTest } from './tableColConfigModal/TableColumnConfigModalTest';
import { PalettePage } from './tokens/palette/palettePage';
import { ReactQueryLocationsTable } from './reactQueryLocationsTable';
import { ProjectTableDemo } from './editableTable';
@@ -37,7 +35,6 @@ export function SandboxPage() {
{ id: 'reactQueryLocationsTableDemo', name: 'React-query Loactions Demo', component: ReactQueryLocationsTable },
{ id: 'Draft', name: 'DRAFT RTE demo', component: DraftRTEDemo },
{ id: 'scrollSpy', name: 'Scroll Spy', component: ScrollSpyDemo },
- { id: 'responsive', name: 'Responsive', component: Responsive },
{ id: 'uui_theming', name: 'UUI Theming', component: ThemeDemo },
{ id: 'theme_electric', name: 'Theme Electric', component: ThemeElectricDemo },
{ id: 'DemoTablePaged', name: 'Table with paging', component: DemoTablePaged },
@@ -45,7 +42,6 @@ export function SandboxPage() {
{ id: 'TableCellsStylesSandbox', name: 'Table Cells/Rows styles', component: TableCellsStylesSandbox },
{ id: 'AdaptivePanel', name: 'Adaptive panel', component: AdaptivePanelDemo },
{ id: 'RTEDemo', name: 'RTE Demo', component: RichTextEditorDemo },
- { id: 'TableColumnsConfigurationModal', name: 'Table ColumnsConfigModal', component: TableColumnConfigModalTest },
{ id: 'tokens', name: 'Tokens' },
{ parentId: 'tokens', id: 'tokensPalette', name: 'Palette', component: PalettePage },
{ id: 'rtl-example', name: 'Rtl-example', component: RtlExample },
diff --git a/app/src/sandbox/db/DbDemo.module.scss b/app/src/sandbox/db/DbDemo.module.scss
index ba2feb8b8d..7985bdfc50 100644
--- a/app/src/sandbox/db/DbDemo.module.scss
+++ b/app/src/sandbox/db/DbDemo.module.scss
@@ -1,14 +1,6 @@
-@use '~@epam/assets/theme/theme_promo' as *;
-
.container {
display: flex;
flex-direction: column;
flex: 1 1 0;
height: calc(100vh - 60px);
-
- &.uui-theme-promo {
- :global {
- @include theme-promo();
- }
- }
}
diff --git a/app/src/sandbox/draft-rte/DraftRTEDemo.module.scss b/app/src/sandbox/draft-rte/DraftRTEDemo.module.scss
index 000151ded5..58fc900a4d 100644
--- a/app/src/sandbox/draft-rte/DraftRTEDemo.module.scss
+++ b/app/src/sandbox/draft-rte/DraftRTEDemo.module.scss
@@ -1,15 +1,7 @@
-@use '~@epam/assets/theme/theme_loveship' as *;
-
.demo-wrapper {
display: flex;
width: 100%;
height: calc(100vh - 60px);
-
- &.uui-theme-loveship {
- :global {
- @include theme-loveship();
- }
- }
}
.DraftRTEDemo {
diff --git a/app/src/sandbox/productsTable/ProductsTableDemo.module.scss b/app/src/sandbox/productsTable/ProductsTableDemo.module.scss
index 7c95757f39..dca4500d1d 100644
--- a/app/src/sandbox/productsTable/ProductsTableDemo.module.scss
+++ b/app/src/sandbox/productsTable/ProductsTableDemo.module.scss
@@ -1,12 +1,5 @@
-@use '~@epam/assets/theme/theme_loveship' as *;
.container {
width: 100%;
height: calc(100vh - 60px);
-
- &.uui-theme-loveship {
- :global {
- @include theme-loveship();
- }
- }
}
diff --git a/app/src/sandbox/responsive/LoveshipPickerInput.tsx b/app/src/sandbox/responsive/LoveshipPickerInput.tsx
deleted file mode 100644
index b7bd03d0b9..0000000000
--- a/app/src/sandbox/responsive/LoveshipPickerInput.tsx
+++ /dev/null
@@ -1,36 +0,0 @@
-import React, { useState } from 'react';
-import { PickerInput } from '@epam/loveship';
-import { useArrayDataSource } from '@epam/uui-core';
-
-const languageLevels = [
- { id: 2, level: 'A1' }, { id: 3, level: 'A1+' }, { id: 4, level: 'A2' }, { id: 5, level: 'A2+' }, { id: 6, level: 'B1' }, { id: 7, level: 'B1+' }, { id: 8, level: 'B2' }, { id: 9, level: 'B2+' }, { id: 10, level: 'C1' }, { id: 11, level: 'C1+' }, { id: 12, level: 'C2' },
-];
-
-interface ILoveshipPickerInputProps {
- type: 'single' | 'multi';
-}
-
-export const LoveshipPickerInput: React.FC = ({ type }) => {
- const [value, setValue] = useState(null);
-
- const dataSource = useArrayDataSource(
- {
- items: languageLevels,
- },
- [],
- );
-
- return (
- item.level }
- entityName="Language level"
- selectionMode={ type }
- valueType="id"
- sorting={ { field: 'level', direction: 'asc' } }
- placeholder={ type }
- />
- );
-};
diff --git a/app/src/sandbox/responsive/PromoPickerInput.tsx b/app/src/sandbox/responsive/PromoPickerInput.tsx
deleted file mode 100644
index 41a95eb449..0000000000
--- a/app/src/sandbox/responsive/PromoPickerInput.tsx
+++ /dev/null
@@ -1,36 +0,0 @@
-import React, { useState } from 'react';
-import { PickerInput } from '@epam/promo';
-import { useArrayDataSource } from '@epam/uui-core';
-
-const languageLevels = [
- { id: 2, level: 'A1' }, { id: 3, level: 'A1+' }, { id: 4, level: 'A2' }, { id: 5, level: 'A2+' }, { id: 6, level: 'B1' }, { id: 7, level: 'B1+' }, { id: 8, level: 'B2' }, { id: 9, level: 'B2+' }, { id: 10, level: 'C1' }, { id: 11, level: 'C1+' }, { id: 12, level: 'C2' },
-];
-
-interface IPromoPickerInputProps {
- type: 'single' | 'multi';
-}
-
-export const PromoPickerInput: React.FC = ({ type }) => {
- const [value, setValue] = useState(null);
-
- const dataSource = useArrayDataSource(
- {
- items: languageLevels,
- },
- [],
- );
-
- return (
- item.level }
- entityName="Language level"
- selectionMode={ type }
- valueType="id"
- sorting={ { field: 'level', direction: 'asc' } }
- placeholder={ type }
- />
- );
-};
diff --git a/app/src/sandbox/responsive/Responsive.module.scss b/app/src/sandbox/responsive/Responsive.module.scss
deleted file mode 100644
index c86051d3d1..0000000000
--- a/app/src/sandbox/responsive/Responsive.module.scss
+++ /dev/null
@@ -1,16 +0,0 @@
-@use '~@epam/assets/theme/theme_loveship' as *;
-@use '~@epam/assets/theme/theme_promo' as *;
-
-.wrapper {
- display: flex;
- flex-direction: column;
- width: calc(100vw - 240px);
-
- &.uui-theme-loveship {
- @include theme-loveship();
- }
-
- &.uui-theme-promo {
- @include theme-promo();
- }
-}
diff --git a/app/src/sandbox/responsive/Responsive.tsx b/app/src/sandbox/responsive/Responsive.tsx
deleted file mode 100644
index 3657797f16..0000000000
--- a/app/src/sandbox/responsive/Responsive.tsx
+++ /dev/null
@@ -1,22 +0,0 @@
-import React from 'react';
-import css from './Responsive.module.scss';
-import { PromoPickerInput } from './PromoPickerInput';
-import { LoveshipPickerInput } from './LoveshipPickerInput';
-import cx from 'classnames';
-
-export function Responsive() {
- return (
- <>
-
-
- loveship:
-
-
-
- >
- );
-}
diff --git a/app/src/sandbox/scroll-spy/ScrollSpyDemo.module.scss b/app/src/sandbox/scroll-spy/ScrollSpyDemo.module.scss
index 75742cec47..5a2a4c3340 100644
--- a/app/src/sandbox/scroll-spy/ScrollSpyDemo.module.scss
+++ b/app/src/sandbox/scroll-spy/ScrollSpyDemo.module.scss
@@ -1,12 +1,4 @@
-@use '~@epam/assets/theme/theme_promo' as *;
-
.panel {
display: flex;
width: 100%;
-
- &.uui-theme-promo {
- :global {
- @include theme-promo();
- }
- }
}
diff --git a/app/src/sandbox/skills/SkillsBatteryPopover.module.scss b/app/src/sandbox/skills/SkillsBatteryPopover.module.scss
index badd82742b..3b05d4c96e 100644
--- a/app/src/sandbox/skills/SkillsBatteryPopover.module.scss
+++ b/app/src/sandbox/skills/SkillsBatteryPopover.module.scss
@@ -1,13 +1,5 @@
-@use '~@epam/assets/theme/theme_promo' as *;
-
.wrapper {
padding: 3rem 1rem 0;
-
- &.uui-theme-promo {
- :global {
- @include theme-promo();
- }
- }
}
.target-body-container {
@@ -27,12 +19,6 @@
.drop-container {
width: 334px;
- &.uui-theme-promo {
- :global {
- @include theme-promo();
- }
- }
-
&:global(.uui-dropdown-body) {
min-width: 300px;
background-color: var(--gray5);
diff --git a/app/src/sandbox/tableCellStyles/TableCellsStylesSandbox.module.scss b/app/src/sandbox/tableCellStyles/TableCellsStylesSandbox.module.scss
deleted file mode 100644
index 43e3231983..0000000000
--- a/app/src/sandbox/tableCellStyles/TableCellsStylesSandbox.module.scss
+++ /dev/null
@@ -1,16 +0,0 @@
-@use '~@epam/assets/theme/theme_promo' as *;
-@use '~@epam/assets/theme/theme_loveship' as *;
-
-.wrapper {
- &.uui-theme-promo {
- :global {
- @include theme-promo();
- }
- }
-
- &.uui-theme-loveship {
- :global {
- @include theme-loveship();
- }
- }
-}
\ No newline at end of file
diff --git a/app/src/sandbox/tableCellStyles/TableCellsStylesSandbox.tsx b/app/src/sandbox/tableCellStyles/TableCellsStylesSandbox.tsx
index 374e7b3de5..d42def8e4f 100644
--- a/app/src/sandbox/tableCellStyles/TableCellsStylesSandbox.tsx
+++ b/app/src/sandbox/tableCellStyles/TableCellsStylesSandbox.tsx
@@ -17,7 +17,6 @@ import * as loveship from '@epam/loveship';
import * as uui from '@epam/uui';
import { DatePickerProps } from '@epam/uui';
import { PickerInputBaseProps } from '@epam/uui-components';
-import css from './TableCellsStylesSandbox.module.scss';
// Defined interface describe data for each row
interface Item {
@@ -304,7 +303,7 @@ export default function TableCellsStylesSandbox() {
// Render the table, passing the prepared data to it in form of getRows callback, list props (e.g. items counts)
return (
-
+
();
-
- const [value, onValueChange] = useState({});
-
- const dataSource = useLazyDataSource(
- {
- api: svc.api.demo.persons,
- },
- [],
- );
-
- const view = dataSource.useView(value, onValueChange, {
- getRowOptions: () => ({ checkbox: { isVisible: true } }),
- });
-
- const productColumns: DataColumnProps[] = useMemo(
- () => [
- {
- key: 'name',
- caption: 'Name',
- render: (p) => {p.name},
- width: 200,
- fix: 'left',
- isSortable: true,
- }, {
- key: 'profileStatus',
- caption: 'Profile Status',
- render: (p) =>
- p.profileStatus && (
-
-
-
- ),
- width: 140,
- minWidth: 80,
- isSortable: true,
- alignSelf: 'center',
- info: 'Person Status according his work profile',
- }, {
- key: 'salary',
- caption: 'Salary',
- render: (p) => {p.salary},
- isSortable: true,
- width: 100,
- textAlign: 'right',
- info: 'Salary sum for the last year',
- }, {
- key: 'jobTitle',
- caption: 'Title',
- render: (r) => {r.jobTitle},
- width: 200,
- grow: 1,
- isSortable: true,
- info: 'Job full description',
- }, {
- key: 'detailed',
- render: () => {},
- width: 54,
- alignSelf: 'center',
- fix: 'right',
- info: 'detailed description',
- },
- ],
- [],
- );
-
- const columnsConfigurationModal = (props: ColumnsConfigurationModalProps) => {
- const { columns, columnsConfig, defaultConfig, ...modalProps } = props;
- return (
- [column.caption as string, column.info as string] }
- renderItem={ (column) => (
-
- {column.caption}
- { column.info && { ` / ${column.info}` } }
-
- ) }
- />
- );
- };
-
- return (
-
-
- Table example with ColumnConfigModal
-
-
-
-
-
- );
-}
diff --git a/app/src/sandbox/tables/PersonsTableDemo.module.scss b/app/src/sandbox/tables/PersonsTableDemo.module.scss
index c4a6b4dad3..3c8b38c1b8 100644
--- a/app/src/sandbox/tables/PersonsTableDemo.module.scss
+++ b/app/src/sandbox/tables/PersonsTableDemo.module.scss
@@ -1,4 +1,3 @@
-@use '~@epam/assets/theme/theme_loveship' as *;
.container {
display: flex;
@@ -7,12 +6,6 @@
height: calc(100vh - 60px);
width: 100%;
overflow: hidden;
-
- &.uui-theme-loveship {
- :global {
- @include theme-loveship();
- }
- }
}
.sticky-footer {
diff --git a/epam-assets/package.json b/epam-assets/package.json
index 32bb337aac..78390fa09e 100644
--- a/epam-assets/package.json
+++ b/epam-assets/package.json
@@ -6,7 +6,7 @@
"license": "MIT",
"scripts": {
"build": "ts-node -T ../uui-build/ts/scripts/buildUuiModule.ts && yarn buildTheme",
- "buildTheme": "yarn --cwd ../uui-build compile-theme-scss --dirs=./epam-assets/theme:./epam-assets/build/css/theme",
+ "buildTheme": "yarn --cwd ../uui-build compile-theme-scss --dirs=./epam-assets/theme:./epam-assets/build/css/theme --recursive",
"prepublish": "yarn build"
},
"repository": {
diff --git a/epam-assets/theme/no-fonts/theme_electric.scss b/epam-assets/theme/no-fonts/theme_electric.scss
new file mode 100644
index 0000000000..7d138d7962
--- /dev/null
+++ b/epam-assets/theme/no-fonts/theme_electric.scss
@@ -0,0 +1,7 @@
+@use '../variables/6px_grid' as *;
+@use '../variables/electric' as *;
+
+.uui-theme-electric {
+ @include electric-variables();
+ @include uui-6px-grid();
+}
diff --git a/epam-assets/theme/no-fonts/theme_loveship.scss b/epam-assets/theme/no-fonts/theme_loveship.scss
new file mode 100644
index 0000000000..7917a1dd01
--- /dev/null
+++ b/epam-assets/theme/no-fonts/theme_loveship.scss
@@ -0,0 +1,8 @@
+@use '../variables/6px_grid' as *;
+@use '../variables/loveship' as *;
+
+
+.uui-theme-loveship {
+ @include loveship-variables();
+ @include uui-6px-grid();
+}
diff --git a/epam-assets/theme/no-fonts/theme_loveship_dark.scss b/epam-assets/theme/no-fonts/theme_loveship_dark.scss
new file mode 100644
index 0000000000..7fe988d613
--- /dev/null
+++ b/epam-assets/theme/no-fonts/theme_loveship_dark.scss
@@ -0,0 +1,8 @@
+@use '../variables/6px_grid' as *;
+@use '../variables/loveship_dark' as *;
+
+
+.uui-theme-loveship_dark {
+ @include loveship_dark_variables();
+ @include uui-6px-grid();
+}
diff --git a/epam-assets/theme/no-fonts/theme_promo.scss b/epam-assets/theme/no-fonts/theme_promo.scss
new file mode 100644
index 0000000000..e1507a5588
--- /dev/null
+++ b/epam-assets/theme/no-fonts/theme_promo.scss
@@ -0,0 +1,8 @@
+@use '../variables/6px_grid' as *;
+@use '../variables/promo' as *;
+
+.uui-theme-promo {
+ @include promo_variables();
+ @include uui-6px-grid();
+}
+
diff --git a/epam-assets/theme/theme_electric.scss b/epam-assets/theme/theme_electric.scss
index 432646f6a7..4eb718239f 100644
--- a/epam-assets/theme/theme_electric.scss
+++ b/epam-assets/theme/theme_electric.scss
@@ -1,515 +1,8 @@
-@use './tokens/_theme_electric.scss' as tokens;
-@use './theme_6px' as *;
-@import '../scss/electric/font-faces';
-
-/* Name convention */
-/* --uui-'component name or group of components name'-'styled part name'-'states(optional)'-'hover/active/focus(optional)' */
-
-@mixin theme-electric {
- --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;
-
- --gradient-1: linear-gradient(90deg, #00FFD3 0%, #00F6FF 44.22%, #B896FF 90%);
- --gradient-2: linear-gradient(152deg, #0078C2 8.13%, #0047FF 59.98%, #8453D2 91.87%);
- --gradient-3: linear-gradient(135deg, #1294E2 14.78%, #0A68F1 57.36%, #8453D2 95%);
- --gradient-4: linear-gradient(315deg, #1294E2 0%, #92B4FF 46.64%, #C3A6FF 100%);
- --gradient-5: linear-gradient(90deg, #1294E2 0%, #92B4FF 46.64%, #C3A6FF 100%);
-
- /* 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: 3px;
- }
-
- /* begin color classes */
- .uui-color-fire {
- --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(--white);
- }
-
- .uui-color-night100 {
- --uui-color-5: var(--white);
- --uui-color-10: var(--white);
- --uui-color-20: var(--night50);
- --uui-color-50: var(--night100);
- --uui-color-60: var(--night200);
- --uui-color-70: var(--night300);
- --uui-color-contrast: var(--uui-neutral-70);
- }
-
- .uui-color-night300 {
- --uui-color-5: var(--night50);
- --uui-color-10: var(--night100);
- --uui-color-20: var(--night200);
- --uui-color-50: var(--night300);
- --uui-color-60: var(--night400);
- --uui-color-70: var(--night500);
- --uui-color-contrast: var(--uui-neutral-80);
- }
-
- .uui-color-night600 {
- --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(--white);
- }
-
- .uui-color-night700 {
- --uui-color-5: var(--night400);
- --uui-color-10: var(--night500);
- --uui-color-20: var(--night600);
- --uui-color-50: var(--night700);
- --uui-color-60: var(--night800);
- --uui-color-70: var(--night900);
- --uui-color-contrast: var(--white);
- }
-
- .uui-color-sun {
- --uui-color-5: var(--sun-5);
- --uui-color-10: var(--sun-10);
- --uui-color-20: var(--sun-20);
- --uui-color-50: var(--sun-50);
- --uui-color-60: var(--sun-60);
- --uui-color-70: var(--sun-70);
- --uui-color-contrast: var(--uui-neutral-80);
- }
-
- .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(--uui-neutral-80);
- }
-
- .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(--uui-neutral-80);
- }
-
- .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(--uui-neutral-80);
- }
-
- .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(--uui-neutral-80);
- }
-
- /* Accordion */
-
- .uui-accordion-container {
- --uui-accordion-border-radius: 6px;
- }
-
- /* FileCard */
-
- .uui-file_card {
- --uui-file_card-border-radius: 6px;
- }
-
- /* 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-border: var(--uui-neutral-30);
- --uui-badge-bg-hover: var(--uui-neutral-10);
- --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-neutral {
- --uui-badge-caption: var(--uui-neutral-95);
-
- &.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-hover: var(--uui-neutral-80);
- }
- }
-
- .uui-badge.uui-color-night100 {
- &.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-night600 {
- &.uui-fill-outline {
- --uui-badge-border: var(--uui-neutral-60);
- --uui-badge-border-hover: var(--uui-neutral-60);
- --uui-badge-caption: var(--uui-neutral-95);
- --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):is(.uui-fill-outline, .uui-fill-none, .uui-fill-ghost) {
- --uui-btn-caption: var(--uui-neutral-70);
- }
-
- /* IconButton */
-
- .uui-icon_button.uui-color-neutral {
- --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(--white);
- }
-
- .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-contrast {
- --uui-link_btn-text: var(--uui-neutral-5);
- --uui-link_btn-text-hover: var(--uui-neutral-10);
- --uui-link_btn-text-active: var(--uui-neutral-20);
- }
-
- .uui-link_button.uui-color-white {
- --uui-link_btn-text: var(--uui-neutral-5);
- --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);
- }
-
- /* CountIndicator */
-
- .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-neutral, .uui-color-white, .uui-color-sun, .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);
- }
- }
-
- /* MainMenu */
-
- .uui-main_menu {
- --uui-main_menu-bg: var(--uui-neutral-95);
- --uui-main_menu-hover: var(--uui-neutral-90);
- --uui-main_menu-border-active-gradient: var(--gradient-1);
- }
-
- .uui-main_menu-dropdown {
- --uui-main_menu-dropdown-bg-hover: var(--uui-neutral-95);
- }
-
- /* BurgerMenu */
-
- .uui-burger {
- --uui-burger_menu-bg: var(--uui-neutral-95);
- --uui-burger_menu-bg-hover: var(--uui-neutral-95);
- --uui-burger_menu-item: var(--uui-neutral-95);
- }
-
- /* Tag */
-
- .uui-tag {
- &.uui-fill-outline {
- --uui-tag-fill: var(--uui-neutral-95);
- --uui-tag-caption: var(--uui-text-primary);
- }
-
- &.uui-color-white {
- &.uui-fill-solid {
- --uui-tag-fill: var(--uui-neutral-95);
-
- .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-night100 {
- &.uui-fill-solid {
- --uui-tag-fill: var(--uui-neutral-95);
-
- .uui-count_indicator {
- --uui-count_indicator-bg: var(--uui-neutral-30);
- --uui-count_indicator-border: var(--uui-neutral-30);
- --uui-count_indicator-caption: var(--uui-neutral-70);
- }
- }
-
- &.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-night700 {
- &.uui-fill-solid {
- .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-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-sun {
- --uui-tag-fill: var(--uui-neutral-100);
-
- &.uui-fill-solid {
- --uui-tag-caption: var(--uui-neutral-80);
-
- .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-count_indicator-caption: var(--uui-neutral-80);
- }
- }
-
- &.uui-fill-outline {
- --uui-tag-caption: var(--uui-neutral-95);
-
- .uui-count_indicator {
- --uui-count_indicator-bg: var(--uui-neutral-0);
- --uui-count_indicator-border: var(--uui-neutral-40);
- }
- }
- }
-
- &.uui-color-neutral {
- &.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-text-primary);
- --uui-tag-fill: var(--uui-neutral-95);
-
- .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-fill: var(--uui-neutral-95);
-
- .uui-count_indicator {
- --uui-count_indicator-bg: var(--uui-neutral-30);
- --uui-count_indicator-border: var(--uui-neutral-30);
- }
- }
- }
- }
-
- /* Typography */
-
- .uui-typography {
- h1 {
- font-weight: 400;
- }
-
- h2, h3, h4, h5 {
- font-weight: 600;
- }
-
- .promo-header:is(h1, h2, h3, h4, h5, h6) {
- font-family: var(--font-museo-sans);
- }
-
- h1.promo-header {
- font-size: 72px;
- font-weight: 400;
- }
-
- h2.promo-header {
- font-size: 44px;
- font-weight: 600;
- }
-
- h3.promo-header {
- font-size: 36px;
- }
-
- h4.promo-header {
- font-size: 30px;
- }
-
- h5.promo-header {
- font-size: 24px;
- }
-
- h6.promo-header {
- font-size: 18px;
- }
- }
-}
+@use 'variables/6px_grid' as *;
+@use 'variables/electric' as *;
+@use '../scss/electric/font-faces';
.uui-theme-electric {
- @include theme-electric();
+ @include electric-variables();
@include uui-6px-grid();
}
diff --git a/epam-assets/theme/theme_loveship.scss b/epam-assets/theme/theme_loveship.scss
index 8b9465e14c..29b1e95d67 100644
--- a/epam-assets/theme/theme_loveship.scss
+++ b/epam-assets/theme/theme_loveship.scss
@@ -1,593 +1,8 @@
@use '../scss/loveship/font-faces';
-@use './theme_6px' as *;
-@use './tokens/_theme_loveship_light.scss' as tokens;
-/* Name convention */
-/* --uui-'component name or group of components name'-'styled part name'-'states(optional)'-'hover/active/focus(optional)' */
-
-@mixin theme-loveship {
- --uui-font: 'Source Sans Pro', sans-serif;
- --uui-font-mono: 'Roboto Mono', monospace;
-
- /* Loveship old colors */
- --uui-color-night100-800: #D3D7E9;
- --uui-color-night100-900: #B1B9D8;
-
- --uui-color-night700-800: #30323D;
- --uui-color-night700-900: #1A1B20;
-
- /* end Loveship old colors */
-
- /* 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: 3px;
- }
-
- /* begin color classes */
-
- .uui-color-grass {
- --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-sky {
- --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-fire {
- --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-night100 {
- --uui-color-5: var(--white);
- --uui-color-10: var(--white);
- --uui-color-20: var(--night50);
- --uui-color-50: var(--night100);
- --uui-color-60: var(--uui-color-night100-800);
- --uui-color-70: var(--uui-color-night100-900);
- --uui-color-contrast: var(--uui-neutral-70);
- }
-
- .uui-color-night300 {
- --uui-color-5: var(--night50);
- --uui-color-10: var(--night100);
- --uui-color-20: var(--night200);
- --uui-color-50: var(--night300);
- --uui-color-60: var(--night400);
- --uui-color-70: var(--night500);
- --uui-color-contrast: var(--uui-neutral-80);
- }
-
- .uui-color-night500 {
- --uui-color-5: var(--night200);
- --uui-color-10: var(--night300);
- --uui-color-20: var(--night400);
- --uui-color-50: var(--night500);
- --uui-color-60: var(--night600);
- --uui-color-70: var(--night700);
- --uui-color-contrast: var(--white);
- }
-
- .uui-color-night600,
- .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-night700 {
- --uui-color-5: var(--night400);
- --uui-color-10: var(--night500);
- --uui-color-20: var(--night600);
- --uui-color-50: var(--night700);
- --uui-color-60: var(--uui-color-night700-800);
- --uui-color-70: var(--uui-color-night700-900);
- --uui-color-contrast: var(--white);
- }
-
- .uui-color-sun {
- --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-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(--uui-neutral-80);
- }
-
- .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(--uui-neutral-80);
- }
-
- .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(--uui-neutral-80);
- }
-
- .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(--uui-neutral-80);
- }
-
- /* Accordion */
-
- .uui-accordion-container {
- --uui-accordion-border-radius: 6px;
- }
-
- /* FileCard */
-
- .uui-file_card {
- --uui-file_card-border-radius: 6px;
- }
-
- /* Badge */
-
- .uui-badge.uui-color-white {
- &.uui-fill-solid {
- --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-30);
- --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-badge.uui-color-neutral,
- .uui-badge.uui-color-night300 {
- &.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-bg-hover: var(--uui-neutral-30);
- --uui-badge-border: var(--uui-neutral-40);
- --uui-badge-caption: var(--uui-neutral-80);
- --uui-badge-caption-hover: var(--uui-neutral-80);
- }
- }
-
- .uui-badge.uui-color-night100 {
- &.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-night600 {
- &.uui-fill-outline {
- --uui-badge-bg: var(--uui-neutral-20);
- --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-night600):is(.uui-fill-outline, .uui-fill-none, .uui-fill-ghost) {
- --uui-btn-caption: var(--uui-neutral-70);
- }
- }
-
- /* IconButton */
-
- .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-contrast {
- --uui-link_btn-text: var(--uui-neutral-5);
- --uui-link_btn-text-hover: var(--uui-neutral-10);
- --uui-link_btn-text-active: var(--uui-neutral-20);
- }
-
- .uui-link_button.uui-color-white {
- --uui-link_btn-text: var(--uui-neutral-5);
- --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-error-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-sun, .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-night50 {
- --uui-flex-row-bg: var(--night50);
- }
-
- .uui-flex-row.uui-color-night100 {
- --uui-flex-row-bg: var(--night100);
- }
-
- .uui-panel.uui-color-white {
- --uui-panel-bg: var(--white);
- }
-
- .uui-panel.uui-color-night50 {
- --uui-panel-bg: var(--night50);
- }
-
- /* Text */
-
- .uui-text.uui-color-night50 {
- --uui-text: var(--night50);
- }
-
- .uui-text.uui-color-night400 {
- --uui-text: var(--night400);
- }
-
- .uui-text.uui-color-night800 {
- --uui-text: var(--night800);
- }
-
- .uui-text.uui-color-night900 {
- --uui-text: var(--night900);
- }
-
- .uui-text.uui-color-sky {
- --uui-text: var(--sky-70);
- }
-
- .uui-text.uui-color-grass {
- --uui-text: var(--grass-70);
- }
-
- .uui-text.uui-color-sun {
- --uui-text: var(--sun-70);
- }
-
- .uui-text.uui-color-fire {
- --uui-text: var(--fire-70);
- }
-
- /* Tag */
-
- .uui-tag {
- &.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-night100 {
- &.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-night300 {
- &.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-night700 {
- &.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-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-sun {
- &.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);
- }
- }
- }
-
- /* 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-light {
- --uui-text-font: var(--uui-font);
- --uui-text-font-weight: 300;
- }
-
- /* Typography */
-
- .uui-typography {
- h1 {
- font-weight: 600;
- }
-
- h2 {
- font-weight: 700;
- }
-
- h3 {
- font-weight: 600;
- }
-
- .hero-header {
- font-size: 72px;
- line-height: 72px;
- font-weight: 700;
- }
- }
-}
+@use 'variables/6px_grid' as *;
+@use 'variables/loveship' as *;
.uui-theme-loveship {
- @include theme-loveship();
+ @include loveship-variables();
@include uui-6px-grid();
}
diff --git a/epam-assets/theme/theme_loveship_dark.scss b/epam-assets/theme/theme_loveship_dark.scss
index 62736cf0bb..0d23377460 100644
--- a/epam-assets/theme/theme_loveship_dark.scss
+++ b/epam-assets/theme/theme_loveship_dark.scss
@@ -1,822 +1,8 @@
@use '../scss/loveship/font-faces';
-@use './theme_6px' as *;
-@use './tokens/_theme_loveship_dark.scss' as tokens;
-/* Name convention */
-/* --uui-'component name or group of components name'-'styled part name'-'states(optional)'-'hover/active/focus(optional)' */
-
-@mixin theme-loveship_dark {
- --uui-font: 'Source Sans Pro', sans-serif;
- --uui-font-mono: 'Roboto Mono', monospace;
-
- /* shadows */
- --uui-shadow-level-1: 0 0 4px rgba(0, 0, 0, 0.2), 0 3px 6px rgba(0, 0, 0, 0.2);
- --uui-shadow-level-2: 0 1px 2px rgba(0, 0, 0, 0.2), 0 4px 22px 3px rgba(0, 0, 0, 0.26);
- --uui-shadow-level-3: 0 1px 2px rgba(0, 0, 0, 0.2), 0 3px 25px 3px rgba(0, 0, 0, 0.56);
-
- @include tokens.theme-tokens;
-
- & {
- --uui-border-radius: 3px;
- }
-
- /* begin color classes */
-
- .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(--white);
- }
-
- .uui-color-grass {
- --uui-color-5: var(--grass-5);
- --uui-color-10: var(--grass-10);
- --uui-color-20: var(--grass-20);
- --uui-color-50: var(--grass-50);
- --uui-color-60: var(--grass-60);
- --uui-color-70: var(--grass-70);
- --uui-color-contrast: var(--white);
- }
-
- .uui-color-sky {
- --uui-color-5: var(--sky-5);
- --uui-color-10: var(--sky-10);
- --uui-color-20: var(--sky-20);
- --uui-color-50: var(--sky-50);
- --uui-color-60: var(--sky-60);
- --uui-color-70: var(--sky-70);
- --uui-color-contrast: var(--white);
- }
-
- .uui-color-fire {
- --uui-color-5: var(--fire-5);
- --uui-color-10: var(--fire-10);
- --uui-color-20: var(--fire-20);
- --uui-color-50: var(--fire-50);
- --uui-color-60: var(--fire-60);
- --uui-color-70: var(--fire-70);
- --uui-color-contrast: var(--white);
- }
-
- .uui-color-sun {
- --uui-color-5: var(--sun-5);
- --uui-color-10: var(--sun-10);
- --uui-color-20: var(--sun-20);
- --uui-color-50: var(--sun-50);
- --uui-color-60: var(--sun-60);
- --uui-color-70: var(--sun-70);
- --uui-color-contrast: var(--night700);
- }
-
- .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(--night700);
- }
-
- .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(--night700);
- }
-
- .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(--night700);
- }
-
- .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(--night700);
- }
-
- /* override variables */
-
- /* isInvalid color */
-
- .uui-invalid:is(.uui-input-box, .uui-radio-input-container, .uui-checkbox-container) {
- --uui-error-50: var(--uui-error-60);
- }
-
- /* Accordion */
-
- .uui-accordion-container {
- --uui-accordion-border-radius: 6px;
- }
-
- /* FileCard */
-
- .uui-file_card {
- --uui-file_card-border-radius: 6px;
- }
-
- /* Button */
-
- .uui-button {
- --uui-btn-bg-disabled: var(--uui-neutral-50);
- --uui-btn-border-disabled: var(--uui-neutral-50);
-
- &.uui-fill-solid.uui-color-white {
- --uui-btn-bg-active: var(--uui-neutral-20);
-
- &:active {
- background-color: var(--uui-neutral-20);
- border-color: var(--uui-neutral-20);
- }
- }
-
- &.uui-fill-outline {
- --uui-btn-border: var(--uui-color-60);
- --uui-btn-border-hover: var(--uui-color-60);
- --uui-btn-border-active: var(--uui-color-60);
- --uui-btn-caption: var(--uui-color-60);
-
- &.uui-color-neutral,
- &.uui-color-secondary {
- --uui-btn-bg-hover: var(--uui-neutral-60);
- --uui-btn-bg-active: var(--uui-neutral-50);
- --uui-btn-border: var(--uui-neutral-30);
- --uui-btn-border-hover: var(--uui-neutral-30);
- --uui-btn-border-active: var(--uui-neutral-30);
- --uui-btn-caption: var(--uui-neutral-10);
- }
-
- &.uui-color-white {
- --uui-btn-caption: var(--uui-neutral-0);
- --uui-btn-border: var(--uui-neutral-0);
- --uui-btn-border-hover: var(--uui-neutral-0);
- --uui-btn-border-active: var(--uui-neutral-0);
- }
- }
-
- &.uui-fill-none {
- --uui-btn-border: var(--uui-color-60);
- --uui-btn-border-hover: var(--uui-color-60);
- --uui-btn-border-active: var(--uui-color-60);
- --uui-btn-caption: var(--uui-color-60);
-
- &.uui-color-neutral,
- &.uui-color-secondary {
- --uui-btn-bg-hover: var(--uui-neutral-60);
- --uui-btn-bg-active: var(--uui-neutral-50);
- --uui-btn-border: var(--uui-neutral-30);
- --uui-btn-border-hover: var(--uui-neutral-30);
- --uui-btn-border-active: var(--uui-neutral-30);
- --uui-btn-caption: var(--uui-neutral-10);
- }
-
- &.uui-color-white {
- --uui-btn-caption: var(--uui-neutral-0);
- --uui-btn-border: var(--uui-neutral-0);
- --uui-btn-border-hover: var(--uui-neutral-0);
- --uui-btn-border-active: var(--uui-neutral-0);
- }
- }
-
- &.uui-fill-ghost {
- --uui-btn-caption: var(--uui-color-60);
-
- &.uui-color-neutral,
- &.uui-color-secondary {
- --uui-btn-bg-hover: var(--uui-neutral-60);
- --uui-btn-bg-active: var(--uui-neutral-50);
- --uui-btn-border-hover: var(--uui-neutral-60);
- --uui-btn-border-active: var(--uui-neutral-50);
- --uui-btn-caption: var(--uui-neutral-10);
- }
-
- &.uui-color-white {
- --uui-btn-caption: var(--uui-neutral-0);
- }
- }
- }
-
- .uui-blocker-container {
- --uui-blocker-bg: var(--uui-surface-main);
- --uui-blocker-bg-with-opacity: #303240CC;
- }
-
- /* Badge */
-
- .uui-badge {
- &.uui-fill-outline {
- .uui-count_indicator {
- --uui-count_indicator-bg: var(--uui-neutral-80);
- --uui-count_indicator-border: var(--uui-neutral-40);
- --uui-count_indicator-caption: var(--uui-neutral-10);
- }
- }
- }
-
- .uui-badge.uui-color-neutral,
- .uui-badge.uui-color-night300 {
- &.uui-fill-solid {
- --uui-badge-bg: var(--uui-neutral-30);
- --uui-badge-border: var(--uui-neutral-30);
- --uui-badge-bg-hover: var(--uui-neutral-40);
- --uui-badge-border-hover: var(--uui-neutral-40);
- --uui-badge-caption: var(--uui-neutral-5);
-
- .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-80);
- }
- }
-
- &.uui-fill-outline {
- --uui-badge-bg: var(--uui-neutral-60);
- --uui-badge-border: var(--uui-neutral-30);
- --uui-badge-bg-hover: var(--uui-neutral-50);
- --uui-badge-border-hover: var(--uui-neutral-30);
- --uui-badge-caption: var(--uui-neutral-0);
- --uui-badge-caption-hover: var(--uui-neutral-5);
- }
- }
-
- .uui-badge.uui-color-white {
- &.uui-fill-outline {
- --uui-badge-bg: var(--uui-neutral-0);
- --uui-badge-border: var(--uui-neutral-30);
- --uui-badge-bg-hover: var(--uui-neutral-10);
- --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-neutral-100) 8%, transparent);
- --uui-count_indicator-border: color-mix(in srgb, var(--uui-neutral-100) 40%, transparent);
- --uui-count_indicator-caption: var(--uui-neutral-70);
- }
- }
- }
-
- .uui-badge.uui-color-night100 {
- &.uui-fill-solid {
- --uui-badge-bg: var(--uui-neutral-10);
- --uui-badge-border: var(--uui-neutral-10);
- --uui-badge-bg-hover: var(--uui-neutral-20);
- --uui-badge-border-hover: var(--uui-neutral-20);
- --uui-badge-caption: var(--uui-neutral-70);
- --uui-badge-caption-hover: var(--uui-neutral-70);
- }
-
- &.uui-fill-outline {
- --uui-badge-bg: var(--uui-neutral-10);
- --uui-badge-border: var(--uui-neutral-30);
- --uui-badge-bg-hover: var(--uui-neutral-20);
- --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-neutral-100) 8%, transparent);
- --uui-count_indicator-border: color-mix(in srgb, var(--uui-neutral-100) 40%, transparent);
- --uui-count_indicator-caption: var(--uui-neutral-70);
- }
- }
- }
-
- .uui-badge.uui-color-night600 {
- &.uui-fill-solid {
- --uui-badge-bg: var(--uui-neutral-60);
- --uui-badge-border: var(--uui-neutral-60);
- --uui-badge-bg-hover: var(--uui-neutral-50);
- --uui-badge-border-hover: var(--uui-neutral-50);
- --uui-badge-caption: var(--white);
- --uui-badge-caption-hover: var(--white);
- }
-
- &.uui-fill-outline {
- --uui-badge-bg: var(--uui-neutral-80);
- --uui-badge-border: var(--uui-neutral-60);
- --uui-badge-bg-hover: var(--uui-neutral-70);
- --uui-badge-border-hover: var(--uui-neutral-60);
- --uui-badge-caption: var(--uui-neutral-5);
- --uui-badge-caption-hover: var(--uui-neutral-5);
- }
- }
-
- /* IconButton */
-
- .uui-icon_button:is(.uui-color-info, .uui-color-primary, .uui-color-sky, .uui-color-success, .uui-color-accent, .uui-color-grass .uui-color-error, .uui-color-critical, .uui-color-sun, .uui-color-fire) {
- --uui-icon_btn: var(--uui-color-60);
- --uui-icon_btn-hover: var(--uui-color-70);
- --uui-icon_btn-active: var(--uui-color-70);
- }
-
- .uui-icon_button.uui-color-white {
- --uui-icon_btn-hover: var(--uui-neutral-20);
- --uui-icon_btn-active: var(--uui-neutral-30);
- }
-
- .uui-icon_button.uui-color-secondary {
- --uui-icon_btn: var(--uui-neutral-40);
- --uui-icon_btn-hover: var(--uui-neutral-30);
- --uui-icon_btn-active: var(--uui-neutral-30);
- }
-
- /* LinkButton */
-
- .uui-link_button.uui-color-contrast {
- --uui-link_btn-text: var(--uui-neutral-0);
- --uui-link_btn-text-hover: var(--uui-neutral-5);
- --uui-link_btn-text-active: var(--uui-neutral-10);
- }
-
- .uui-link_button:is(.uui-color-primary, .uui-color-sky, .uui-color-secondary, .uui-color-accent, .uui-color-grass, .uui-color-critical, .uui-color-fire) {
- --uui-link_btn-text-disabled: var(--uui-neutral-40);
- }
-
- .uui-link_button.uui-color-primary,
- .uui-link_button.uui-color-sky {
- --uui-link_btn-text: var(--uui-color-60);
- --uui-link_btn-text-hover: var(--uui-color-70);
- }
-
- .uui-link_button.uui-color-secondary {
- --uui-link_btn-text: var(--uui-neutral-30);
- --uui-link_btn-text-hover: var(--uui-neutral-20);
- --uui-link_btn-text-active: var(--uui-neutral-10);
- }
-
- .uui-link_button.uui-color-white {
- --uui-link_btn-text: var(--uui-neutral-5);
- --uui-link_btn-text-disabled: color-mix(in srgb, var(--white) 40%, transparent);
- }
-
- /* TubButton */
-
- .uui-tab-button {
- --uui-tab_btn-text-hover: var(--uui-primary-60);
- --uui-tab_btn-text-active: var(--uui-primary-60);
- }
-
- /* MainMenu */
-
- .uui-main_menu {
- --uui-main_menu-text: var(--uui-neutral-0);
- --uui-main_menu-text-active: var(--uui-neutral-0);
- --uui-main_menu-bg: var(--uui-neutral-70);
-
- --uui-main_menu-search-bg: var(--uui-neutral-5);
- --uui-main_menu-search-border: var(--uui-neutral-40);
- --uui-main_menu-search-placeholder: var(--uui-text-tertiary);
- --uui-main_menu-search-text: var(--uui-text-primary);
- --uui-main_menu-search-icon: var(--uui-neutral-70);
-
- --uui-main_menu-icon: var(--uui-neutral-5);
- --uui-main_menu-icon-hover: var(--uui-neutral-5);
- --uui-main_menu-icon-active: var(--uui-neutral-5);
- }
-
- .uui-main_menu-dropdown {
- --uui-main_menu-text: var(--uui-neutral-0);
- --uui-main_menu-text-active: var(--uui-neutral-0);
- --uui-main_menu-dropdown-bg-hover: var(--uui-neutral-70);
- }
-
- /* BurgerMenu */
-
- .uui-burger {
- --uui-burger_menu-bg: var(--uui-app-bg);
- --uui-burger_menu-bg-hover: var(--uui-app-bg);
- --uui-burger_menu-caption: var(--uui-neutral-90);
- --uui-burger_menu-icon: var(--uui-neutral-5);
- --uui-burger_menu-item: var(--uui-app-bg);
- }
-
- /* BurgerButton */
- .uui-main_menu-burger-button {
- --uui-burger_btn_caption: var(--uui-neutral-0);
- --uui-burger_btn_caption-hover: var(--uui-primary-50);
- --uui-burger_btn_caption-active: var(--uui-primary-50);
- --uui-burger_btn-border: var(--uui-neutral-40);
- }
-
- /* BurgerSearch */
-
- .uui-main_menu-burger-search {
- --uui-burger_search: var(--uui-neutral-0);
- --uui-burger_search-fill: var(--uui-neutral-70);
- --uui-burger_search-bg: var(--uui-neutral-40);
- --uui-burger_search-placeholder: var(--uui-text-tertiary);
- }
-
- /* Tooltip */
-
- .uui-tooltip-container.uui-color-neutral {
- --uui-tooltip-border: var(--uui-neutral-50);
- }
-
- .uui-tooltip-container.uui-color-white {
- --uui-tooltip-bg: var(--uui-neutral-10);
- }
-
- .uui-tooltip-container.uui-color-critical {
- --uui-tooltip-bg: var(--uui-critical-50);
- }
-
- .uui-tooltip-container.uui-color-inverted {
- --uui-tooltip-bg: var(--uui-neutral-10);
- --uui-tooltip-text: var(--uui-neutral-70);
- }
-
- /* CountIndicator */
-
- .uui-count_indicator:is(.uui-color-neutral, .uui-color-gray, .uui-color-info, .uui-color-sky, .uui-color-grass, .uui-color-success, .uui-color-critical, .uui-color-fire, .uui-color-warning, .uui-color-sun) {
- --uui-count_indicator-bg: var(--uui-color-60);
- --uui-count_indicator-border: var(--uui-color-60);
-
- &.uui-color-neutral, &.uui-color-gray {
- --uui-count_indicator-caption: var(--uui-neutral-10);
- }
- }
-
- /* 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(--white);
- }
- }
-
- .uui-status_indicator.uui-color-night600,
- .uui-status_indicator.uui-color-neutral {
- .uui-status_indicator-dot {
- background-color: var(--uui-neutral-30);
- }
-
- &.uui-fill-outline {
- .uui-status_indicator-dot {
- background-color: color-mix(in srgb, var(--uui-neutral-30) 20%, transparent);
- border: 1px solid var(--uui-neutral-30);
- }
- }
- }
-
- /* Alert */
-
- .uui-alert.uui-color-info {
- --uui-alert-icon: var(--uui-color-60);
- --uui-alert-border: var(--uui-color-60);
- }
-
- .uui-alert.uui-color-success {
- --uui-alert-icon: var(--uui-color-60);
- --uui-alert-border: var(--uui-color-60);
- }
-
- .uui-alert.uui-color-warning {
- --uui-alert-icon: var(--uui-color-60);
- --uui-alert-border: var(--uui-color-60);
- }
-
- .uui-alert.uui-color-error {
- --uui-alert-icon: var(--uui-color-60);
- --uui-alert-border: var(--uui-color-60);
- }
-
- /* Tag */
-
- .uui-tag {
- .uui-count_indicator {
- --uui-count_indicator-bg: color-mix(in srgb, var(--white) 10%, transparent);
- --uui-count_indicator-border: color-mix(in srgb, var(--white) 50%, transparent);
- }
-
- &.uui-fill-outline {
- --uui-tag-caption: var(--uui-neutral-0);
- --uui-tag-fill: var(--uui-neutral-0);
-
- .uui-count_indicator {
- --uui-count_indicator-bg: var(--uui-neutral-70);
- --uui-count_indicator-border: var(--uui-neutral-40);
- --uui-count_indicator-caption: var(--uui-neutral-10);
- }
- }
-
- &.uui-color-neutral,
- &.uui-color-night300 {
- &.uui-fill-solid {
- --uui-tag-caption: var(--uui-neutral-0);
- --uui-tag-fill: var(--uui-neutral-0);
- --uui-tag-bg: var(--uui-neutral-50);
- --uui-tag-border: var(--uui-neutral-50);
- --uui-tag-bg-hover: var(--uui-neutral-60);
- --uui-tag-border-hover: var(--uui-neutral-60);
-
- .uui-count_indicator {
- --uui-count_indicator-bg: var(--uui-neutral-0);
- --uui-count_indicator-border: var(--uui-neutral-0);
- }
- }
-
- &.uui-fill-outline {
- --uui-tag-bg: var(--uui-neutral-30);
- --uui-tag-border: var(--uui-neutral-20);
- --uui-tag-bg-hover: var(--uui-neutral-40);
- --uui-tag-border-hover: var(--uui-neutral-20);
-
- .uui-count_indicator {
- --uui-count_indicator-bg: var(--uui-neutral-40);
- --uui-count_indicator-border: var(--uui-neutral-40);
- --uui-count_indicator-caption: var(--uui-neutral-10);
- }
- }
- }
-
- &.uui-color-white {
- &.uui-fill-solid {
- --uui-tag-bg-hover: var(--uui-neutral-5);
- --uui-tag-border-hover: var(--uui-neutral-5);
-
- .uui-count_indicator {
- --uui-count_indicator-bg: var(--uui-neutral-40);
- --uui-count_indicator-border: var(--uui-neutral-40);
- --uui-count_indicator-caption: var(--uui-neutral-10);
- }
- }
-
- &.uui-fill-outline {
- --uui-tag-bg: color-mix(in srgb, var(--white) 5%, transparent);
- --uui-tag-border: var(--uui-neutral-0);
- --uui-tag-bg-hover: color-mix(in srgb, var(--white) 10%, transparent);
- --uui-tag-border-hover: var(--uui-neutral-0);
-
- .uui-count_indicator {
- --uui-count_indicator-bg: var(--uui-neutral-40);
- --uui-count_indicator-border: var(--uui-neutral-40);
- }
- }
- }
-
- &.uui-color-night100 {
- &.uui-fill-solid {
- --uui-tag-caption: var(--uui-neutral-80);
- --uui-tag-fill: var(--uui-neutral-80);
- --uui-tag-bg: var(--uui-neutral-10);
- --uui-tag-border: var(--uui-neutral-40);
- --uui-tag-bg-hover: var(--uui-neutral-5);
- --uui-tag-border-hover: var(--uui-neutral-30);
-
- .uui-count_indicator {
- --uui-count_indicator-bg: var(--uui-neutral-40);
- --uui-count_indicator-border: var(--uui-neutral-40);
- --uui-count_indicator-caption: var(--uui-neutral-10);
- }
- }
-
- &.uui-fill-outline {
- --uui-tag-bg: color-mix(in srgb, var(--uui-neutral-0) 12%, transparent);
- --uui-tag-bg-hover: color-mix(in srgb, var(--uui-neutral-0) 15%, transparent);
- --uui-tag-border: var(--uui-neutral-20);
- --uui-tag-border-hover: var(--uui-neutral-20);
-
- .uui-count_indicator {
- --uui-count_indicator-bg: var(--uui-neutral-40);
- --uui-count_indicator-border: var(--uui-neutral-40);
- --uui-count_indicator-caption: var(--uui-neutral-10);
- }
- }
- }
-
- &.uui-color-night700 {
- &.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-60);
- --uui-tag-border-hover: var(--uui-neutral-60);
-
- .uui-count_indicator {
- --uui-count_indicator-caption: var(--uui-neutral-0);
- }
- }
-
- &.uui-fill-outline {
- --uui-tag-bg: var(--uui-neutral-80);
- --uui-tag-border: var(--uui-neutral-40);
- --uui-tag-bg-hover: var(--uui-neutral-70);
- --uui-tag-border-hover: var(--uui-neutral-40);
-
- .uui-count_indicator {
- --uui-count_indicator-caption: var(--uui-neutral-0);
- --uui-count_indicator-bg: var(--uui-neutral-70);
- --uui-count_indicator-border: var(--uui-neutral-40);
- }
- }
- }
-
- &.uui-color-warning,
- &.uui-color-sun {
- &.uui-fill-solid {
- .uui-count_indicator {
- --uui-count_indicator-bg: color-mix(in srgb, var(--uui-neutral-5) 5%, transparent);
- --uui-count_indicator-border: color-mix(in srgb, var(--uui-neutral-70) 30%, transparent);
- }
- }
- }
- }
-
- .uui-presets-panel-input .uui-icon-cancel {
- &:hover {
- background-color: var(--uui-neutral-60);
- }
-
- &:active {
- background-color: var(--uui-neutral-50);
- }
- }
-
- .uui-scroll-bars {
- --uui-scroll_bars-bg: var(--uui-neutral-40);
- --uui-scroll_bars-bg-active: var(--uui-neutral-30);
- }
-
- .uui-text-placeholder {
- --uui-text_placeholder-gradient: repeating-linear-gradient(90deg, var(--uui-neutral-30) 0, var(--uui-neutral-50) 150px, var(--uui-neutral-30) 300px);
- }
-
- .uui-dt-vars {
- --uui-dt-header-row-bg: var(--uui-surface-sunken);
- }
-
- .uui-filters-panel-item-toggler {
- --uui-filters_toggler-bg-hover: var(--uui-neutral-30);
- }
-
- /* DropdownMenu */
-
- .uui-dropdownMenu-body {
- --uui-dropdown-selected_mark: var(--uui-info-60);
- }
-
- /* PickerInput */
-
- .uui-picker_input-body {
- --uui-picker_input-selected_mark: var(--uui-info-60);
- }
-
- /* 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-light {
- --uui-text-font: var(--uui-font);
- --uui-text-font-weight: 300;
- }
-
- /* Text */
-
- .uui-text.uui-color-sky {
- --uui-text: var(--sky-70);
- }
-
- .uui-text.uui-color-grass {
- --uui-text: var(--grass-70);
- }
-
- .uui-text.uui-color-sun {
- --uui-text: var(--sun-70);
- }
-
- .uui-text.uui-color-fire {
- --uui-text: var(--fire-70);
- }
-
- .uui-text.uui-color-night50 {
- --uui-text: var(--night50);
- }
-
- .uui-text.uui-color-night300 {
- --uui-text: var(--night300);
- }
-
- .uui-text.uui-color-night400 {
- --uui-text: var(--night400);
- }
-
- .uui-text.uui-color-night500 {
- --uui-text: var(--night500);
- }
-
- .uui-text.uui-color-night600 {
- --uui-text: var(--night600);
- }
-
- .uui-text.uui-color-night700 {
- --uui-text: var(--night700);
- }
-
- .uui-text.uui-color-night800 {
- --uui-text: var(--night800);
- }
-
- .uui-text.uui-color-night900 {
- --uui-text: var(--night900);
- }
-
- /* Typography */
-
- .uui-typography {
- .uui-highlight {
- background-color: var(--uui-warning-20);
- }
-
- h1 {
- font-weight: 600;
- }
-
- h2 {
- font-weight: 700;
- }
-
- h3 {
- font-weight: 600;
- }
-
- .hero-header {
- font-size: 72px;
- line-height: 72px;
- font-weight: 700;
- }
- }
-}
+@use 'variables/6px_grid' as *;
+@use 'variables/loveship_dark' as *;
.uui-theme-loveship_dark {
- @include theme-loveship_dark();
+ @include loveship_dark_variables();
@include uui-6px-grid();
}
diff --git a/epam-assets/theme/theme_promo.scss b/epam-assets/theme/theme_promo.scss
index 899f1fa1cc..24979742a1 100644
--- a/epam-assets/theme/theme_promo.scss
+++ b/epam-assets/theme/theme_promo.scss
@@ -1,606 +1,9 @@
@use '../scss/promo/font-faces';
-@use './theme_6px' as *;
-@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 theme-promo {
- --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);
- }
- }
-}
+@use 'variables/6px_grid' as *;
+@use 'variables/promo' as *;
.uui-theme-promo {
- @include theme-promo();
+ @include promo_variables();
@include uui-6px-grid();
}
diff --git a/epam-assets/theme/theme_vanilla_thunder.scss b/epam-assets/theme/theme_vanilla_thunder.scss
index 511935ad0c..e83b170f82 100644
--- a/epam-assets/theme/theme_vanilla_thunder.scss
+++ b/epam-assets/theme/theme_vanilla_thunder.scss
@@ -1,4 +1,4 @@
-@use './theme_6px' as *;
+@use './variables/6px_grid' as *;
/* Name convention */
/* --uui-'component name or group of components name'-'styled part name'-'states(optional)'-'hover/active/focus(optional)' */
diff --git a/epam-assets/theme/theme_6px.scss b/epam-assets/theme/variables/6px_grid.scss
similarity index 100%
rename from epam-assets/theme/theme_6px.scss
rename to epam-assets/theme/variables/6px_grid.scss
diff --git a/epam-assets/theme/variables/electric.scss b/epam-assets/theme/variables/electric.scss
new file mode 100644
index 0000000000..2b968bdc1f
--- /dev/null
+++ b/epam-assets/theme/variables/electric.scss
@@ -0,0 +1,508 @@
+@use 'tokens/_theme_electric.scss' as tokens;
+
+/* Name convention */
+/* --uui-'component name or group of components name'-'styled part name'-'states(optional)'-'hover/active/focus(optional)' */
+
+@mixin electric-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;
+
+ --gradient-1: linear-gradient(90deg, #00FFD3 0%, #00F6FF 44.22%, #B896FF 90%);
+ --gradient-2: linear-gradient(152deg, #0078C2 8.13%, #0047FF 59.98%, #8453D2 91.87%);
+ --gradient-3: linear-gradient(135deg, #1294E2 14.78%, #0A68F1 57.36%, #8453D2 95%);
+ --gradient-4: linear-gradient(315deg, #1294E2 0%, #92B4FF 46.64%, #C3A6FF 100%);
+ --gradient-5: linear-gradient(90deg, #1294E2 0%, #92B4FF 46.64%, #C3A6FF 100%);
+
+ /* 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: 3px;
+ }
+
+ /* begin color classes */
+ .uui-color-fire {
+ --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(--white);
+ }
+
+ .uui-color-night100 {
+ --uui-color-5: var(--white);
+ --uui-color-10: var(--white);
+ --uui-color-20: var(--night50);
+ --uui-color-50: var(--night100);
+ --uui-color-60: var(--night200);
+ --uui-color-70: var(--night300);
+ --uui-color-contrast: var(--uui-neutral-70);
+ }
+
+ .uui-color-night300 {
+ --uui-color-5: var(--night50);
+ --uui-color-10: var(--night100);
+ --uui-color-20: var(--night200);
+ --uui-color-50: var(--night300);
+ --uui-color-60: var(--night400);
+ --uui-color-70: var(--night500);
+ --uui-color-contrast: var(--uui-neutral-80);
+ }
+
+ .uui-color-night600 {
+ --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(--white);
+ }
+
+ .uui-color-night700 {
+ --uui-color-5: var(--night400);
+ --uui-color-10: var(--night500);
+ --uui-color-20: var(--night600);
+ --uui-color-50: var(--night700);
+ --uui-color-60: var(--night800);
+ --uui-color-70: var(--night900);
+ --uui-color-contrast: var(--white);
+ }
+
+ .uui-color-sun {
+ --uui-color-5: var(--sun-5);
+ --uui-color-10: var(--sun-10);
+ --uui-color-20: var(--sun-20);
+ --uui-color-50: var(--sun-50);
+ --uui-color-60: var(--sun-60);
+ --uui-color-70: var(--sun-70);
+ --uui-color-contrast: var(--uui-neutral-80);
+ }
+
+ .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(--uui-neutral-80);
+ }
+
+ .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(--uui-neutral-80);
+ }
+
+ .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(--uui-neutral-80);
+ }
+
+ .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(--uui-neutral-80);
+ }
+
+ /* Accordion */
+
+ .uui-accordion-container {
+ --uui-accordion-border-radius: 6px;
+ }
+
+ /* FileCard */
+
+ .uui-file_card {
+ --uui-file_card-border-radius: 6px;
+ }
+
+ /* 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-border: var(--uui-neutral-30);
+ --uui-badge-bg-hover: var(--uui-neutral-10);
+ --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-neutral {
+ --uui-badge-caption: var(--uui-neutral-95);
+
+ &.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-hover: var(--uui-neutral-80);
+ }
+ }
+
+ .uui-badge.uui-color-night100 {
+ &.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-night600 {
+ &.uui-fill-outline {
+ --uui-badge-border: var(--uui-neutral-60);
+ --uui-badge-border-hover: var(--uui-neutral-60);
+ --uui-badge-caption: var(--uui-neutral-95);
+ --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):is(.uui-fill-outline, .uui-fill-none, .uui-fill-ghost) {
+ --uui-btn-caption: var(--uui-neutral-70);
+ }
+
+ /* IconButton */
+
+ .uui-icon_button.uui-color-neutral {
+ --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(--white);
+ }
+
+ .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-contrast {
+ --uui-link_btn-text: var(--uui-neutral-5);
+ --uui-link_btn-text-hover: var(--uui-neutral-10);
+ --uui-link_btn-text-active: var(--uui-neutral-20);
+ }
+
+ .uui-link_button.uui-color-white {
+ --uui-link_btn-text: var(--uui-neutral-5);
+ --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);
+ }
+
+ /* CountIndicator */
+
+ .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-neutral, .uui-color-white, .uui-color-sun, .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);
+ }
+ }
+
+ /* MainMenu */
+
+ .uui-main_menu {
+ --uui-main_menu-bg: var(--uui-neutral-95);
+ --uui-main_menu-hover: var(--uui-neutral-90);
+ --uui-main_menu-border-active-gradient: var(--gradient-1);
+ }
+
+ .uui-main_menu-dropdown {
+ --uui-main_menu-dropdown-bg-hover: var(--uui-neutral-95);
+ }
+
+ /* BurgerMenu */
+
+ .uui-burger {
+ --uui-burger_menu-bg: var(--uui-neutral-95);
+ --uui-burger_menu-bg-hover: var(--uui-neutral-95);
+ --uui-burger_menu-item: var(--uui-neutral-95);
+ }
+
+ /* Tag */
+
+ .uui-tag {
+ &.uui-fill-outline {
+ --uui-tag-fill: var(--uui-neutral-95);
+ --uui-tag-caption: var(--uui-text-primary);
+ }
+
+ &.uui-color-white {
+ &.uui-fill-solid {
+ --uui-tag-fill: var(--uui-neutral-95);
+
+ .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-night100 {
+ &.uui-fill-solid {
+ --uui-tag-fill: var(--uui-neutral-95);
+
+ .uui-count_indicator {
+ --uui-count_indicator-bg: var(--uui-neutral-30);
+ --uui-count_indicator-border: var(--uui-neutral-30);
+ --uui-count_indicator-caption: var(--uui-neutral-70);
+ }
+ }
+
+ &.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-night700 {
+ &.uui-fill-solid {
+ .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-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-sun {
+ --uui-tag-fill: var(--uui-neutral-100);
+
+ &.uui-fill-solid {
+ --uui-tag-caption: var(--uui-neutral-80);
+
+ .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-count_indicator-caption: var(--uui-neutral-80);
+ }
+ }
+
+ &.uui-fill-outline {
+ --uui-tag-caption: var(--uui-neutral-95);
+
+ .uui-count_indicator {
+ --uui-count_indicator-bg: var(--uui-neutral-0);
+ --uui-count_indicator-border: var(--uui-neutral-40);
+ }
+ }
+ }
+
+ &.uui-color-neutral {
+ &.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-text-primary);
+ --uui-tag-fill: var(--uui-neutral-95);
+
+ .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-fill: var(--uui-neutral-95);
+
+ .uui-count_indicator {
+ --uui-count_indicator-bg: var(--uui-neutral-30);
+ --uui-count_indicator-border: var(--uui-neutral-30);
+ }
+ }
+ }
+ }
+
+ /* Typography */
+
+ .uui-typography {
+ h1 {
+ font-weight: 400;
+ }
+
+ h2, h3, h4, h5 {
+ font-weight: 600;
+ }
+
+ .promo-header:is(h1, h2, h3, h4, h5, h6) {
+ font-family: var(--font-museo-sans);
+ }
+
+ h1.promo-header {
+ font-size: 72px;
+ font-weight: 400;
+ }
+
+ h2.promo-header {
+ font-size: 44px;
+ font-weight: 600;
+ }
+
+ h3.promo-header {
+ font-size: 36px;
+ }
+
+ h4.promo-header {
+ font-size: 30px;
+ }
+
+ h5.promo-header {
+ font-size: 24px;
+ }
+
+ h6.promo-header {
+ font-size: 18px;
+ }
+ }
+}
\ No newline at end of file
diff --git a/epam-assets/theme/variables/loveship.scss b/epam-assets/theme/variables/loveship.scss
new file mode 100644
index 0000000000..dbd57e2370
--- /dev/null
+++ b/epam-assets/theme/variables/loveship.scss
@@ -0,0 +1,586 @@
+@use 'tokens/_theme_loveship_light.scss' as tokens;
+/* Name convention */
+/* --uui-'component name or group of components name'-'styled part name'-'states(optional)'-'hover/active/focus(optional)' */
+
+@mixin loveship-variables {
+ --uui-font: 'Source Sans Pro', sans-serif;
+ --uui-font-mono: 'Roboto Mono', monospace;
+
+ /* Loveship old colors */
+ --uui-color-night100-800: #D3D7E9;
+ --uui-color-night100-900: #B1B9D8;
+
+ --uui-color-night700-800: #30323D;
+ --uui-color-night700-900: #1A1B20;
+
+ /* end Loveship old colors */
+
+ /* 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: 3px;
+ }
+
+ /* begin color classes */
+
+ .uui-color-grass {
+ --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-sky {
+ --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-fire {
+ --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-night100 {
+ --uui-color-5: var(--white);
+ --uui-color-10: var(--white);
+ --uui-color-20: var(--night50);
+ --uui-color-50: var(--night100);
+ --uui-color-60: var(--uui-color-night100-800);
+ --uui-color-70: var(--uui-color-night100-900);
+ --uui-color-contrast: var(--uui-neutral-70);
+ }
+
+ .uui-color-night300 {
+ --uui-color-5: var(--night50);
+ --uui-color-10: var(--night100);
+ --uui-color-20: var(--night200);
+ --uui-color-50: var(--night300);
+ --uui-color-60: var(--night400);
+ --uui-color-70: var(--night500);
+ --uui-color-contrast: var(--uui-neutral-80);
+ }
+
+ .uui-color-night500 {
+ --uui-color-5: var(--night200);
+ --uui-color-10: var(--night300);
+ --uui-color-20: var(--night400);
+ --uui-color-50: var(--night500);
+ --uui-color-60: var(--night600);
+ --uui-color-70: var(--night700);
+ --uui-color-contrast: var(--white);
+ }
+
+ .uui-color-night600,
+ .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-night700 {
+ --uui-color-5: var(--night400);
+ --uui-color-10: var(--night500);
+ --uui-color-20: var(--night600);
+ --uui-color-50: var(--night700);
+ --uui-color-60: var(--uui-color-night700-800);
+ --uui-color-70: var(--uui-color-night700-900);
+ --uui-color-contrast: var(--white);
+ }
+
+ .uui-color-sun {
+ --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-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(--uui-neutral-80);
+ }
+
+ .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(--uui-neutral-80);
+ }
+
+ .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(--uui-neutral-80);
+ }
+
+ .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(--uui-neutral-80);
+ }
+
+ /* Accordion */
+
+ .uui-accordion-container {
+ --uui-accordion-border-radius: 6px;
+ }
+
+ /* FileCard */
+
+ .uui-file_card {
+ --uui-file_card-border-radius: 6px;
+ }
+
+ /* Badge */
+
+ .uui-badge.uui-color-white {
+ &.uui-fill-solid {
+ --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-30);
+ --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-badge.uui-color-neutral,
+ .uui-badge.uui-color-night300 {
+ &.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-bg-hover: var(--uui-neutral-30);
+ --uui-badge-border: var(--uui-neutral-40);
+ --uui-badge-caption: var(--uui-neutral-80);
+ --uui-badge-caption-hover: var(--uui-neutral-80);
+ }
+ }
+
+ .uui-badge.uui-color-night100 {
+ &.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-night600 {
+ &.uui-fill-outline {
+ --uui-badge-bg: var(--uui-neutral-20);
+ --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-night600):is(.uui-fill-outline, .uui-fill-none, .uui-fill-ghost) {
+ --uui-btn-caption: var(--uui-neutral-70);
+ }
+ }
+
+ /* IconButton */
+
+ .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-contrast {
+ --uui-link_btn-text: var(--uui-neutral-5);
+ --uui-link_btn-text-hover: var(--uui-neutral-10);
+ --uui-link_btn-text-active: var(--uui-neutral-20);
+ }
+
+ .uui-link_button.uui-color-white {
+ --uui-link_btn-text: var(--uui-neutral-5);
+ --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-error-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-sun, .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-night50 {
+ --uui-flex-row-bg: var(--night50);
+ }
+
+ .uui-flex-row.uui-color-night100 {
+ --uui-flex-row-bg: var(--night100);
+ }
+
+ .uui-panel.uui-color-white {
+ --uui-panel-bg: var(--white);
+ }
+
+ .uui-panel.uui-color-night50 {
+ --uui-panel-bg: var(--night50);
+ }
+
+ /* Text */
+
+ .uui-text.uui-color-night50 {
+ --uui-text: var(--night50);
+ }
+
+ .uui-text.uui-color-night400 {
+ --uui-text: var(--night400);
+ }
+
+ .uui-text.uui-color-night800 {
+ --uui-text: var(--night800);
+ }
+
+ .uui-text.uui-color-night900 {
+ --uui-text: var(--night900);
+ }
+
+ .uui-text.uui-color-sky {
+ --uui-text: var(--sky-70);
+ }
+
+ .uui-text.uui-color-grass {
+ --uui-text: var(--grass-70);
+ }
+
+ .uui-text.uui-color-sun {
+ --uui-text: var(--sun-70);
+ }
+
+ .uui-text.uui-color-fire {
+ --uui-text: var(--fire-70);
+ }
+
+ /* Tag */
+
+ .uui-tag {
+ &.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-night100 {
+ &.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-night300 {
+ &.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-night700 {
+ &.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-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-sun {
+ &.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);
+ }
+ }
+ }
+
+ /* 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-light {
+ --uui-text-font: var(--uui-font);
+ --uui-text-font-weight: 300;
+ }
+
+ /* Typography */
+
+ .uui-typography {
+ h1 {
+ font-weight: 600;
+ }
+
+ h2 {
+ font-weight: 700;
+ }
+
+ h3 {
+ font-weight: 600;
+ }
+
+ .hero-header {
+ font-size: 72px;
+ line-height: 72px;
+ font-weight: 700;
+ }
+ }
+}
diff --git a/epam-assets/theme/variables/loveship_dark.scss b/epam-assets/theme/variables/loveship_dark.scss
new file mode 100644
index 0000000000..b83c663eaa
--- /dev/null
+++ b/epam-assets/theme/variables/loveship_dark.scss
@@ -0,0 +1,815 @@
+@use 'tokens/_theme_loveship_dark.scss' as tokens;
+/* Name convention */
+/* --uui-'component name or group of components name'-'styled part name'-'states(optional)'-'hover/active/focus(optional)' */
+
+@mixin loveship_dark_variables {
+ --uui-font: 'Source Sans Pro', sans-serif;
+ --uui-font-mono: 'Roboto Mono', monospace;
+
+ /* shadows */
+ --uui-shadow-level-1: 0 0 4px rgba(0, 0, 0, 0.2), 0 3px 6px rgba(0, 0, 0, 0.2);
+ --uui-shadow-level-2: 0 1px 2px rgba(0, 0, 0, 0.2), 0 4px 22px 3px rgba(0, 0, 0, 0.26);
+ --uui-shadow-level-3: 0 1px 2px rgba(0, 0, 0, 0.2), 0 3px 25px 3px rgba(0, 0, 0, 0.56);
+
+ @include tokens.theme-tokens;
+
+ & {
+ --uui-border-radius: 3px;
+ }
+
+ /* begin color classes */
+
+ .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(--white);
+ }
+
+ .uui-color-grass {
+ --uui-color-5: var(--grass-5);
+ --uui-color-10: var(--grass-10);
+ --uui-color-20: var(--grass-20);
+ --uui-color-50: var(--grass-50);
+ --uui-color-60: var(--grass-60);
+ --uui-color-70: var(--grass-70);
+ --uui-color-contrast: var(--white);
+ }
+
+ .uui-color-sky {
+ --uui-color-5: var(--sky-5);
+ --uui-color-10: var(--sky-10);
+ --uui-color-20: var(--sky-20);
+ --uui-color-50: var(--sky-50);
+ --uui-color-60: var(--sky-60);
+ --uui-color-70: var(--sky-70);
+ --uui-color-contrast: var(--white);
+ }
+
+ .uui-color-fire {
+ --uui-color-5: var(--fire-5);
+ --uui-color-10: var(--fire-10);
+ --uui-color-20: var(--fire-20);
+ --uui-color-50: var(--fire-50);
+ --uui-color-60: var(--fire-60);
+ --uui-color-70: var(--fire-70);
+ --uui-color-contrast: var(--white);
+ }
+
+ .uui-color-sun {
+ --uui-color-5: var(--sun-5);
+ --uui-color-10: var(--sun-10);
+ --uui-color-20: var(--sun-20);
+ --uui-color-50: var(--sun-50);
+ --uui-color-60: var(--sun-60);
+ --uui-color-70: var(--sun-70);
+ --uui-color-contrast: var(--night700);
+ }
+
+ .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(--night700);
+ }
+
+ .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(--night700);
+ }
+
+ .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(--night700);
+ }
+
+ .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(--night700);
+ }
+
+ /* override variables */
+
+ /* isInvalid color */
+
+ .uui-invalid:is(.uui-input-box, .uui-radio-input-container, .uui-checkbox-container) {
+ --uui-error-50: var(--uui-error-60);
+ }
+
+ /* Accordion */
+
+ .uui-accordion-container {
+ --uui-accordion-border-radius: 6px;
+ }
+
+ /* FileCard */
+
+ .uui-file_card {
+ --uui-file_card-border-radius: 6px;
+ }
+
+ /* Button */
+
+ .uui-button {
+ --uui-btn-bg-disabled: var(--uui-neutral-50);
+ --uui-btn-border-disabled: var(--uui-neutral-50);
+
+ &.uui-fill-solid.uui-color-white {
+ --uui-btn-bg-active: var(--uui-neutral-20);
+
+ &:active {
+ background-color: var(--uui-neutral-20);
+ border-color: var(--uui-neutral-20);
+ }
+ }
+
+ &.uui-fill-outline {
+ --uui-btn-border: var(--uui-color-60);
+ --uui-btn-border-hover: var(--uui-color-60);
+ --uui-btn-border-active: var(--uui-color-60);
+ --uui-btn-caption: var(--uui-color-60);
+
+ &.uui-color-neutral,
+ &.uui-color-secondary {
+ --uui-btn-bg-hover: var(--uui-neutral-60);
+ --uui-btn-bg-active: var(--uui-neutral-50);
+ --uui-btn-border: var(--uui-neutral-30);
+ --uui-btn-border-hover: var(--uui-neutral-30);
+ --uui-btn-border-active: var(--uui-neutral-30);
+ --uui-btn-caption: var(--uui-neutral-10);
+ }
+
+ &.uui-color-white {
+ --uui-btn-caption: var(--uui-neutral-0);
+ --uui-btn-border: var(--uui-neutral-0);
+ --uui-btn-border-hover: var(--uui-neutral-0);
+ --uui-btn-border-active: var(--uui-neutral-0);
+ }
+ }
+
+ &.uui-fill-none {
+ --uui-btn-border: var(--uui-color-60);
+ --uui-btn-border-hover: var(--uui-color-60);
+ --uui-btn-border-active: var(--uui-color-60);
+ --uui-btn-caption: var(--uui-color-60);
+
+ &.uui-color-neutral,
+ &.uui-color-secondary {
+ --uui-btn-bg-hover: var(--uui-neutral-60);
+ --uui-btn-bg-active: var(--uui-neutral-50);
+ --uui-btn-border: var(--uui-neutral-30);
+ --uui-btn-border-hover: var(--uui-neutral-30);
+ --uui-btn-border-active: var(--uui-neutral-30);
+ --uui-btn-caption: var(--uui-neutral-10);
+ }
+
+ &.uui-color-white {
+ --uui-btn-caption: var(--uui-neutral-0);
+ --uui-btn-border: var(--uui-neutral-0);
+ --uui-btn-border-hover: var(--uui-neutral-0);
+ --uui-btn-border-active: var(--uui-neutral-0);
+ }
+ }
+
+ &.uui-fill-ghost {
+ --uui-btn-caption: var(--uui-color-60);
+
+ &.uui-color-neutral,
+ &.uui-color-secondary {
+ --uui-btn-bg-hover: var(--uui-neutral-60);
+ --uui-btn-bg-active: var(--uui-neutral-50);
+ --uui-btn-border-hover: var(--uui-neutral-60);
+ --uui-btn-border-active: var(--uui-neutral-50);
+ --uui-btn-caption: var(--uui-neutral-10);
+ }
+
+ &.uui-color-white {
+ --uui-btn-caption: var(--uui-neutral-0);
+ }
+ }
+ }
+
+ .uui-blocker-container {
+ --uui-blocker-bg: var(--uui-surface-main);
+ --uui-blocker-bg-with-opacity: #303240CC;
+ }
+
+ /* Badge */
+
+ .uui-badge {
+ &.uui-fill-outline {
+ .uui-count_indicator {
+ --uui-count_indicator-bg: var(--uui-neutral-80);
+ --uui-count_indicator-border: var(--uui-neutral-40);
+ --uui-count_indicator-caption: var(--uui-neutral-10);
+ }
+ }
+ }
+
+ .uui-badge.uui-color-neutral,
+ .uui-badge.uui-color-night300 {
+ &.uui-fill-solid {
+ --uui-badge-bg: var(--uui-neutral-30);
+ --uui-badge-border: var(--uui-neutral-30);
+ --uui-badge-bg-hover: var(--uui-neutral-40);
+ --uui-badge-border-hover: var(--uui-neutral-40);
+ --uui-badge-caption: var(--uui-neutral-5);
+
+ .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-80);
+ }
+ }
+
+ &.uui-fill-outline {
+ --uui-badge-bg: var(--uui-neutral-60);
+ --uui-badge-border: var(--uui-neutral-30);
+ --uui-badge-bg-hover: var(--uui-neutral-50);
+ --uui-badge-border-hover: var(--uui-neutral-30);
+ --uui-badge-caption: var(--uui-neutral-0);
+ --uui-badge-caption-hover: var(--uui-neutral-5);
+ }
+ }
+
+ .uui-badge.uui-color-white {
+ &.uui-fill-outline {
+ --uui-badge-bg: var(--uui-neutral-0);
+ --uui-badge-border: var(--uui-neutral-30);
+ --uui-badge-bg-hover: var(--uui-neutral-10);
+ --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-neutral-100) 8%, transparent);
+ --uui-count_indicator-border: color-mix(in srgb, var(--uui-neutral-100) 40%, transparent);
+ --uui-count_indicator-caption: var(--uui-neutral-70);
+ }
+ }
+ }
+
+ .uui-badge.uui-color-night100 {
+ &.uui-fill-solid {
+ --uui-badge-bg: var(--uui-neutral-10);
+ --uui-badge-border: var(--uui-neutral-10);
+ --uui-badge-bg-hover: var(--uui-neutral-20);
+ --uui-badge-border-hover: var(--uui-neutral-20);
+ --uui-badge-caption: var(--uui-neutral-70);
+ --uui-badge-caption-hover: var(--uui-neutral-70);
+ }
+
+ &.uui-fill-outline {
+ --uui-badge-bg: var(--uui-neutral-10);
+ --uui-badge-border: var(--uui-neutral-30);
+ --uui-badge-bg-hover: var(--uui-neutral-20);
+ --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-neutral-100) 8%, transparent);
+ --uui-count_indicator-border: color-mix(in srgb, var(--uui-neutral-100) 40%, transparent);
+ --uui-count_indicator-caption: var(--uui-neutral-70);
+ }
+ }
+ }
+
+ .uui-badge.uui-color-night600 {
+ &.uui-fill-solid {
+ --uui-badge-bg: var(--uui-neutral-60);
+ --uui-badge-border: var(--uui-neutral-60);
+ --uui-badge-bg-hover: var(--uui-neutral-50);
+ --uui-badge-border-hover: var(--uui-neutral-50);
+ --uui-badge-caption: var(--white);
+ --uui-badge-caption-hover: var(--white);
+ }
+
+ &.uui-fill-outline {
+ --uui-badge-bg: var(--uui-neutral-80);
+ --uui-badge-border: var(--uui-neutral-60);
+ --uui-badge-bg-hover: var(--uui-neutral-70);
+ --uui-badge-border-hover: var(--uui-neutral-60);
+ --uui-badge-caption: var(--uui-neutral-5);
+ --uui-badge-caption-hover: var(--uui-neutral-5);
+ }
+ }
+
+ /* IconButton */
+
+ .uui-icon_button:is(.uui-color-info, .uui-color-primary, .uui-color-sky, .uui-color-success, .uui-color-accent, .uui-color-grass .uui-color-error, .uui-color-critical, .uui-color-sun, .uui-color-fire) {
+ --uui-icon_btn: var(--uui-color-60);
+ --uui-icon_btn-hover: var(--uui-color-70);
+ --uui-icon_btn-active: var(--uui-color-70);
+ }
+
+ .uui-icon_button.uui-color-white {
+ --uui-icon_btn-hover: var(--uui-neutral-20);
+ --uui-icon_btn-active: var(--uui-neutral-30);
+ }
+
+ .uui-icon_button.uui-color-secondary {
+ --uui-icon_btn: var(--uui-neutral-40);
+ --uui-icon_btn-hover: var(--uui-neutral-30);
+ --uui-icon_btn-active: var(--uui-neutral-30);
+ }
+
+ /* LinkButton */
+
+ .uui-link_button.uui-color-contrast {
+ --uui-link_btn-text: var(--uui-neutral-0);
+ --uui-link_btn-text-hover: var(--uui-neutral-5);
+ --uui-link_btn-text-active: var(--uui-neutral-10);
+ }
+
+ .uui-link_button:is(.uui-color-primary, .uui-color-sky, .uui-color-secondary, .uui-color-accent, .uui-color-grass, .uui-color-critical, .uui-color-fire) {
+ --uui-link_btn-text-disabled: var(--uui-neutral-40);
+ }
+
+ .uui-link_button.uui-color-primary,
+ .uui-link_button.uui-color-sky {
+ --uui-link_btn-text: var(--uui-color-60);
+ --uui-link_btn-text-hover: var(--uui-color-70);
+ }
+
+ .uui-link_button.uui-color-secondary {
+ --uui-link_btn-text: var(--uui-neutral-30);
+ --uui-link_btn-text-hover: var(--uui-neutral-20);
+ --uui-link_btn-text-active: var(--uui-neutral-10);
+ }
+
+ .uui-link_button.uui-color-white {
+ --uui-link_btn-text: var(--uui-neutral-5);
+ --uui-link_btn-text-disabled: color-mix(in srgb, var(--white) 40%, transparent);
+ }
+
+ /* TubButton */
+
+ .uui-tab-button {
+ --uui-tab_btn-text-hover: var(--uui-primary-60);
+ --uui-tab_btn-text-active: var(--uui-primary-60);
+ }
+
+ /* MainMenu */
+
+ .uui-main_menu {
+ --uui-main_menu-text: var(--uui-neutral-0);
+ --uui-main_menu-text-active: var(--uui-neutral-0);
+ --uui-main_menu-bg: var(--uui-neutral-70);
+
+ --uui-main_menu-search-bg: var(--uui-neutral-5);
+ --uui-main_menu-search-border: var(--uui-neutral-40);
+ --uui-main_menu-search-placeholder: var(--uui-text-tertiary);
+ --uui-main_menu-search-text: var(--uui-text-primary);
+ --uui-main_menu-search-icon: var(--uui-neutral-70);
+
+ --uui-main_menu-icon: var(--uui-neutral-5);
+ --uui-main_menu-icon-hover: var(--uui-neutral-5);
+ --uui-main_menu-icon-active: var(--uui-neutral-5);
+ }
+
+ .uui-main_menu-dropdown {
+ --uui-main_menu-text: var(--uui-neutral-0);
+ --uui-main_menu-text-active: var(--uui-neutral-0);
+ --uui-main_menu-dropdown-bg-hover: var(--uui-neutral-70);
+ }
+
+ /* BurgerMenu */
+
+ .uui-burger {
+ --uui-burger_menu-bg: var(--uui-app-bg);
+ --uui-burger_menu-bg-hover: var(--uui-app-bg);
+ --uui-burger_menu-caption: var(--uui-neutral-90);
+ --uui-burger_menu-icon: var(--uui-neutral-5);
+ --uui-burger_menu-item: var(--uui-app-bg);
+ }
+
+ /* BurgerButton */
+ .uui-main_menu-burger-button {
+ --uui-burger_btn_caption: var(--uui-neutral-0);
+ --uui-burger_btn_caption-hover: var(--uui-primary-50);
+ --uui-burger_btn_caption-active: var(--uui-primary-50);
+ --uui-burger_btn-border: var(--uui-neutral-40);
+ }
+
+ /* BurgerSearch */
+
+ .uui-main_menu-burger-search {
+ --uui-burger_search: var(--uui-neutral-0);
+ --uui-burger_search-fill: var(--uui-neutral-70);
+ --uui-burger_search-bg: var(--uui-neutral-40);
+ --uui-burger_search-placeholder: var(--uui-text-tertiary);
+ }
+
+ /* Tooltip */
+
+ .uui-tooltip-container.uui-color-neutral {
+ --uui-tooltip-border: var(--uui-neutral-50);
+ }
+
+ .uui-tooltip-container.uui-color-white {
+ --uui-tooltip-bg: var(--uui-neutral-10);
+ }
+
+ .uui-tooltip-container.uui-color-critical {
+ --uui-tooltip-bg: var(--uui-critical-50);
+ }
+
+ .uui-tooltip-container.uui-color-inverted {
+ --uui-tooltip-bg: var(--uui-neutral-10);
+ --uui-tooltip-text: var(--uui-neutral-70);
+ }
+
+ /* CountIndicator */
+
+ .uui-count_indicator:is(.uui-color-neutral, .uui-color-gray, .uui-color-info, .uui-color-sky, .uui-color-grass, .uui-color-success, .uui-color-critical, .uui-color-fire, .uui-color-warning, .uui-color-sun) {
+ --uui-count_indicator-bg: var(--uui-color-60);
+ --uui-count_indicator-border: var(--uui-color-60);
+
+ &.uui-color-neutral, &.uui-color-gray {
+ --uui-count_indicator-caption: var(--uui-neutral-10);
+ }
+ }
+
+ /* 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(--white);
+ }
+ }
+
+ .uui-status_indicator.uui-color-night600,
+ .uui-status_indicator.uui-color-neutral {
+ .uui-status_indicator-dot {
+ background-color: var(--uui-neutral-30);
+ }
+
+ &.uui-fill-outline {
+ .uui-status_indicator-dot {
+ background-color: color-mix(in srgb, var(--uui-neutral-30) 20%, transparent);
+ border: 1px solid var(--uui-neutral-30);
+ }
+ }
+ }
+
+ /* Alert */
+
+ .uui-alert.uui-color-info {
+ --uui-alert-icon: var(--uui-color-60);
+ --uui-alert-border: var(--uui-color-60);
+ }
+
+ .uui-alert.uui-color-success {
+ --uui-alert-icon: var(--uui-color-60);
+ --uui-alert-border: var(--uui-color-60);
+ }
+
+ .uui-alert.uui-color-warning {
+ --uui-alert-icon: var(--uui-color-60);
+ --uui-alert-border: var(--uui-color-60);
+ }
+
+ .uui-alert.uui-color-error {
+ --uui-alert-icon: var(--uui-color-60);
+ --uui-alert-border: var(--uui-color-60);
+ }
+
+ /* Tag */
+
+ .uui-tag {
+ .uui-count_indicator {
+ --uui-count_indicator-bg: color-mix(in srgb, var(--white) 10%, transparent);
+ --uui-count_indicator-border: color-mix(in srgb, var(--white) 50%, transparent);
+ }
+
+ &.uui-fill-outline {
+ --uui-tag-caption: var(--uui-neutral-0);
+ --uui-tag-fill: var(--uui-neutral-0);
+
+ .uui-count_indicator {
+ --uui-count_indicator-bg: var(--uui-neutral-70);
+ --uui-count_indicator-border: var(--uui-neutral-40);
+ --uui-count_indicator-caption: var(--uui-neutral-10);
+ }
+ }
+
+ &.uui-color-neutral,
+ &.uui-color-night300 {
+ &.uui-fill-solid {
+ --uui-tag-caption: var(--uui-neutral-0);
+ --uui-tag-fill: var(--uui-neutral-0);
+ --uui-tag-bg: var(--uui-neutral-50);
+ --uui-tag-border: var(--uui-neutral-50);
+ --uui-tag-bg-hover: var(--uui-neutral-60);
+ --uui-tag-border-hover: var(--uui-neutral-60);
+
+ .uui-count_indicator {
+ --uui-count_indicator-bg: var(--uui-neutral-0);
+ --uui-count_indicator-border: var(--uui-neutral-0);
+ }
+ }
+
+ &.uui-fill-outline {
+ --uui-tag-bg: var(--uui-neutral-30);
+ --uui-tag-border: var(--uui-neutral-20);
+ --uui-tag-bg-hover: var(--uui-neutral-40);
+ --uui-tag-border-hover: var(--uui-neutral-20);
+
+ .uui-count_indicator {
+ --uui-count_indicator-bg: var(--uui-neutral-40);
+ --uui-count_indicator-border: var(--uui-neutral-40);
+ --uui-count_indicator-caption: var(--uui-neutral-10);
+ }
+ }
+ }
+
+ &.uui-color-white {
+ &.uui-fill-solid {
+ --uui-tag-bg-hover: var(--uui-neutral-5);
+ --uui-tag-border-hover: var(--uui-neutral-5);
+
+ .uui-count_indicator {
+ --uui-count_indicator-bg: var(--uui-neutral-40);
+ --uui-count_indicator-border: var(--uui-neutral-40);
+ --uui-count_indicator-caption: var(--uui-neutral-10);
+ }
+ }
+
+ &.uui-fill-outline {
+ --uui-tag-bg: color-mix(in srgb, var(--white) 5%, transparent);
+ --uui-tag-border: var(--uui-neutral-0);
+ --uui-tag-bg-hover: color-mix(in srgb, var(--white) 10%, transparent);
+ --uui-tag-border-hover: var(--uui-neutral-0);
+
+ .uui-count_indicator {
+ --uui-count_indicator-bg: var(--uui-neutral-40);
+ --uui-count_indicator-border: var(--uui-neutral-40);
+ }
+ }
+ }
+
+ &.uui-color-night100 {
+ &.uui-fill-solid {
+ --uui-tag-caption: var(--uui-neutral-80);
+ --uui-tag-fill: var(--uui-neutral-80);
+ --uui-tag-bg: var(--uui-neutral-10);
+ --uui-tag-border: var(--uui-neutral-40);
+ --uui-tag-bg-hover: var(--uui-neutral-5);
+ --uui-tag-border-hover: var(--uui-neutral-30);
+
+ .uui-count_indicator {
+ --uui-count_indicator-bg: var(--uui-neutral-40);
+ --uui-count_indicator-border: var(--uui-neutral-40);
+ --uui-count_indicator-caption: var(--uui-neutral-10);
+ }
+ }
+
+ &.uui-fill-outline {
+ --uui-tag-bg: color-mix(in srgb, var(--uui-neutral-0) 12%, transparent);
+ --uui-tag-bg-hover: color-mix(in srgb, var(--uui-neutral-0) 15%, transparent);
+ --uui-tag-border: var(--uui-neutral-20);
+ --uui-tag-border-hover: var(--uui-neutral-20);
+
+ .uui-count_indicator {
+ --uui-count_indicator-bg: var(--uui-neutral-40);
+ --uui-count_indicator-border: var(--uui-neutral-40);
+ --uui-count_indicator-caption: var(--uui-neutral-10);
+ }
+ }
+ }
+
+ &.uui-color-night700 {
+ &.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-60);
+ --uui-tag-border-hover: var(--uui-neutral-60);
+
+ .uui-count_indicator {
+ --uui-count_indicator-caption: var(--uui-neutral-0);
+ }
+ }
+
+ &.uui-fill-outline {
+ --uui-tag-bg: var(--uui-neutral-80);
+ --uui-tag-border: var(--uui-neutral-40);
+ --uui-tag-bg-hover: var(--uui-neutral-70);
+ --uui-tag-border-hover: var(--uui-neutral-40);
+
+ .uui-count_indicator {
+ --uui-count_indicator-caption: var(--uui-neutral-0);
+ --uui-count_indicator-bg: var(--uui-neutral-70);
+ --uui-count_indicator-border: var(--uui-neutral-40);
+ }
+ }
+ }
+
+ &.uui-color-warning,
+ &.uui-color-sun {
+ &.uui-fill-solid {
+ .uui-count_indicator {
+ --uui-count_indicator-bg: color-mix(in srgb, var(--uui-neutral-5) 5%, transparent);
+ --uui-count_indicator-border: color-mix(in srgb, var(--uui-neutral-70) 30%, transparent);
+ }
+ }
+ }
+ }
+
+ .uui-presets-panel-input .uui-icon-cancel {
+ &:hover {
+ background-color: var(--uui-neutral-60);
+ }
+
+ &:active {
+ background-color: var(--uui-neutral-50);
+ }
+ }
+
+ .uui-scroll-bars {
+ --uui-scroll_bars-bg: var(--uui-neutral-40);
+ --uui-scroll_bars-bg-active: var(--uui-neutral-30);
+ }
+
+ .uui-text-placeholder {
+ --uui-text_placeholder-gradient: repeating-linear-gradient(90deg, var(--uui-neutral-30) 0, var(--uui-neutral-50) 150px, var(--uui-neutral-30) 300px);
+ }
+
+ .uui-dt-vars {
+ --uui-dt-header-row-bg: var(--uui-surface-sunken);
+ }
+
+ .uui-filters-panel-item-toggler {
+ --uui-filters_toggler-bg-hover: var(--uui-neutral-30);
+ }
+
+ /* DropdownMenu */
+
+ .uui-dropdownMenu-body {
+ --uui-dropdown-selected_mark: var(--uui-info-60);
+ }
+
+ /* PickerInput */
+
+ .uui-picker_input-body {
+ --uui-picker_input-selected_mark: var(--uui-info-60);
+ }
+
+ /* 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-light {
+ --uui-text-font: var(--uui-font);
+ --uui-text-font-weight: 300;
+ }
+
+ /* Text */
+
+ .uui-text.uui-color-sky {
+ --uui-text: var(--sky-70);
+ }
+
+ .uui-text.uui-color-grass {
+ --uui-text: var(--grass-70);
+ }
+
+ .uui-text.uui-color-sun {
+ --uui-text: var(--sun-70);
+ }
+
+ .uui-text.uui-color-fire {
+ --uui-text: var(--fire-70);
+ }
+
+ .uui-text.uui-color-night50 {
+ --uui-text: var(--night50);
+ }
+
+ .uui-text.uui-color-night300 {
+ --uui-text: var(--night300);
+ }
+
+ .uui-text.uui-color-night400 {
+ --uui-text: var(--night400);
+ }
+
+ .uui-text.uui-color-night500 {
+ --uui-text: var(--night500);
+ }
+
+ .uui-text.uui-color-night600 {
+ --uui-text: var(--night600);
+ }
+
+ .uui-text.uui-color-night700 {
+ --uui-text: var(--night700);
+ }
+
+ .uui-text.uui-color-night800 {
+ --uui-text: var(--night800);
+ }
+
+ .uui-text.uui-color-night900 {
+ --uui-text: var(--night900);
+ }
+
+ /* Typography */
+
+ .uui-typography {
+ .uui-highlight {
+ background-color: var(--uui-warning-20);
+ }
+
+ h1 {
+ font-weight: 600;
+ }
+
+ h2 {
+ font-weight: 700;
+ }
+
+ h3 {
+ font-weight: 600;
+ }
+
+ .hero-header {
+ font-size: 72px;
+ line-height: 72px;
+ font-weight: 700;
+ }
+ }
+}
diff --git a/epam-assets/theme/variables/promo.scss b/epam-assets/theme/variables/promo.scss
new file mode 100644
index 0000000000..f17c683842
--- /dev/null
+++ b/epam-assets/theme/variables/promo.scss
@@ -0,0 +1,600 @@
+@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);
+ }
+ }
+}
+
+
diff --git a/epam-assets/theme/tokens/_color_classes.scss b/epam-assets/theme/variables/tokens/_color_classes.scss
similarity index 100%
rename from epam-assets/theme/tokens/_color_classes.scss
rename to epam-assets/theme/variables/tokens/_color_classes.scss
diff --git a/epam-assets/theme/tokens/_theme_electric.scss b/epam-assets/theme/variables/tokens/_theme_electric.scss
similarity index 100%
rename from epam-assets/theme/tokens/_theme_electric.scss
rename to epam-assets/theme/variables/tokens/_theme_electric.scss
diff --git a/epam-assets/theme/tokens/_theme_loveship_dark.scss b/epam-assets/theme/variables/tokens/_theme_loveship_dark.scss
similarity index 100%
rename from epam-assets/theme/tokens/_theme_loveship_dark.scss
rename to epam-assets/theme/variables/tokens/_theme_loveship_dark.scss
diff --git a/epam-assets/theme/tokens/_theme_loveship_light.scss b/epam-assets/theme/variables/tokens/_theme_loveship_light.scss
similarity index 100%
rename from epam-assets/theme/tokens/_theme_loveship_light.scss
rename to epam-assets/theme/variables/tokens/_theme_loveship_light.scss
diff --git a/epam-assets/theme/tokens/_theme_promo.scss b/epam-assets/theme/variables/tokens/_theme_promo.scss
similarity index 100%
rename from epam-assets/theme/tokens/_theme_promo.scss
rename to epam-assets/theme/variables/tokens/_theme_promo.scss
diff --git a/uui-build/config/bundleSizeBaseLine.json b/uui-build/config/bundleSizeBaseLine.json
index 9b48c5bda1..aa68d1186e 100644
--- a/uui-build/config/bundleSizeBaseLine.json
+++ b/uui-build/config/bundleSizeBaseLine.json
@@ -1,62 +1,62 @@
{
- "version": "5.8.4",
- "timestamp": "2024-07-30",
+ "version": "5.10.0",
+ "timestamp": "2024-10-15",
"sizes": {
"templateApp": {
- "css": 292096,
- "js": 481419
+ "css": 300045,
+ "js": 478744
},
"@epam/app": {
- "css": 1599752,
- "js": 5109887
+ "css": 678966,
+ "js": 5033790
},
"@epam/draft-rte": {
- "css": 9770,
+ "css": 9771,
"js": 45292
},
"@epam/electric": {
"css": 2275,
- "js": 2409
+ "js": 2408
},
"@epam/promo": {
- "css": 46063,
- "js": 10936
+ "css": 47627,
+ "js": 10896
},
"@epam/uui-extra": {
"css": 0,
"js": 213
},
"@epam/loveship": {
- "css": 51745,
- "js": 42552
+ "css": 53440,
+ "js": 42547
},
"@epam/uui-components": {
- "css": 22319,
- "js": 244674
+ "css": 22530,
+ "js": 247001
},
"@epam/uui-core": {
"css": 0,
- "js": 341840
+ "js": 345544
},
"@epam/uui-db": {
"css": 0,
"js": 45769
},
"@epam/uui-docs": {
- "css": 2450,
- "js": 209262
+ "css": 2448,
+ "js": 209641
},
"@epam/uui-editor": {
- "css": 12504,
- "js": 173418
+ "css": 12733,
+ "js": 175284
},
"@epam/uui-timeline": {
- "css": 2254,
- "js": 77573
+ "css": 2255,
+ "js": 79166
},
"@epam/uui": {
- "css": 273977,
- "js": 341695
+ "css": 277776,
+ "js": 343597
}
}
}
\ No newline at end of file
diff --git a/uui-build/linting/stylelintrc.base.js b/uui-build/linting/stylelintrc.base.js
index edada0a806..76a4f75c8b 100644
--- a/uui-build/linting/stylelintrc.base.js
+++ b/uui-build/linting/stylelintrc.base.js
@@ -90,24 +90,5 @@ module.exports = {
...SCSS_COMMON_RULES,
},
},
- {
- extends: ['stylelint-config-sass-guidelines'],
- files: [
- '**/epam-assets/theme/theme_promo.scss',
- '**/epam-assets/theme/theme_electric.scss',
- '**/epam-assets/theme/theme_loveship.scss',
- '**/epam-assets/theme/theme_loveship_dark.scss',
- ],
- rules: {
- ...SCSS_COMMON_RULES,
- 'uui-custom-rules/theme-tokens-validation': [
- true,
- {
- ignoredUnknownVars: ['--font-inter', '--font-museo-sans', '--uui-btn-bg'],
- ignoredRedeclaredVars: ['--uui-border-radius'],
- },
- ],
- },
- },
],
};
diff --git a/uui-build/package.json b/uui-build/package.json
index 3a8b370c59..57eecbde2f 100644
--- a/uui-build/package.json
+++ b/uui-build/package.json
@@ -8,7 +8,7 @@
"build": "yarn build-module",
"build-module": "ts-node -T ts/scripts/buildUuiModule.ts",
"generate-components-api": "ts-node ts/scripts/docsGen.ts",
- "generate-theme-tokens": "ts-node ts/scripts/themeTokensGen.ts --tokens=../public/docs/figmaTokensGen/Theme.json --out-tokens=../public/docs/figmaTokensGen/ThemeOutput.json --out-tokens-data=../public/docs/figmaTokensGen/ThemeTokens.json --out=../epam-assets/theme/tokens",
+ "generate-theme-tokens": "ts-node ts/scripts/themeTokensGen.ts --tokens=../public/docs/figmaTokensGen/Theme.json --out-tokens=../public/docs/figmaTokensGen/ThemeOutput.json --out-tokens-data=../public/docs/figmaTokensGen/ThemeTokens.json --out=../epam-assets/theme/variables/tokens",
"compile-theme-scss": "ts-node ts/scripts/compileThemeScss.ts",
"track-bundle-size": "ts-node ts/scripts/trackBundleSize.ts",
"prepublish": "yarn build",