diff --git a/apps/admin-panel/public/favicon.ico b/apps/admin-panel/public/favicon.ico index 78ba2d0..d457aa9 100644 Binary files a/apps/admin-panel/public/favicon.ico and b/apps/admin-panel/public/favicon.ico differ diff --git a/apps/admin-panel/public/favicon.png b/apps/admin-panel/public/favicon.png index 7c1cb2d..8ea0516 100644 Binary files a/apps/admin-panel/public/favicon.png and b/apps/admin-panel/public/favicon.png differ diff --git a/apps/admin-panel/public/icon-192.png b/apps/admin-panel/public/icon-192.png new file mode 100644 index 0000000..f811ef2 Binary files /dev/null and b/apps/admin-panel/public/icon-192.png differ diff --git a/apps/admin-panel/public/icon-512.png b/apps/admin-panel/public/icon-512.png new file mode 100644 index 0000000..d7c8db0 Binary files /dev/null and b/apps/admin-panel/public/icon-512.png differ diff --git a/apps/admin-panel/public/img/no-items.png b/apps/admin-panel/public/img/no-items.png new file mode 100644 index 0000000..9557cb4 Binary files /dev/null and b/apps/admin-panel/public/img/no-items.png differ diff --git a/apps/admin-panel/src/App.vue b/apps/admin-panel/src/App.vue index ea0b843..2f23ec2 100644 --- a/apps/admin-panel/src/App.vue +++ b/apps/admin-panel/src/App.vue @@ -14,10 +14,8 @@ and `third-color` were never real ant variables (confirmed dead in the old LESS build) and stay only as the CSS custom properties in utilities.less. - ant derives its light "primary background" steps from colorPrimary; for a - navy this dark the generated steps are mid-greys (#8d9296, #81858a), which - painted every selected option / tree node / picker cell grey. Those steps - are pinned to light navy tints instead (see `themeTokens`). + Light primary steps are pinned to blue-600 tints so selected options / + tree nodes / picker cells stay on-brand (see `themeTokens`). -->
@@ -43,14 +41,14 @@ import AppUpdateGate from './components/common/AppUpdateGate.vue'; import { userName } from './utils'; const themeTokens = { - colorPrimary: '#1c2d56', + colorPrimary: '#1d4ed8', colorLink: '#1DA57A', borderRadius: 6, controlHeight: 36, - colorPrimaryBg: '#eef1f8', - colorPrimaryBgHover: '#e1e6f2', - colorPrimaryBorder: '#c5cde0', - colorPrimaryBorderHover: '#9ea9c6', + colorPrimaryBg: '#eff6ff', + colorPrimaryBgHover: '#dbeafe', + colorPrimaryBorder: '#bfdbfe', + colorPrimaryBorderHover: '#93c5fd', }; const layout = useLayoutStore(); diff --git a/apps/admin-panel/src/assets/images/logo/brand-horizontal.png b/apps/admin-panel/src/assets/images/logo/brand-horizontal.png index 0672eda..9557cb4 100644 Binary files a/apps/admin-panel/src/assets/images/logo/brand-horizontal.png and b/apps/admin-panel/src/assets/images/logo/brand-horizontal.png differ diff --git a/apps/admin-panel/src/assets/images/logo/brand-icon.png b/apps/admin-panel/src/assets/images/logo/brand-icon.png index 0672eda..9557cb4 100644 Binary files a/apps/admin-panel/src/assets/images/logo/brand-icon.png and b/apps/admin-panel/src/assets/images/logo/brand-icon.png differ diff --git a/apps/admin-panel/src/assets/images/logo/brand-icon.webp b/apps/admin-panel/src/assets/images/logo/brand-icon.webp index 0555a9e..99616c8 100644 Binary files a/apps/admin-panel/src/assets/images/logo/brand-icon.webp and b/apps/admin-panel/src/assets/images/logo/brand-icon.webp differ diff --git a/apps/admin-panel/src/assets/images/logo/favicon.ico b/apps/admin-panel/src/assets/images/logo/favicon.ico index f3c5b45..d457aa9 100644 Binary files a/apps/admin-panel/src/assets/images/logo/favicon.ico and b/apps/admin-panel/src/assets/images/logo/favicon.ico differ diff --git a/apps/admin-panel/src/assets/styles/form-page.less b/apps/admin-panel/src/assets/styles/form-page.less index f217d73..70ee86f 100644 --- a/apps/admin-panel/src/assets/styles/form-page.less +++ b/apps/admin-panel/src/assets/styles/form-page.less @@ -3,7 +3,7 @@ // its forms): page header, main/side columns, section cards and a sticky // action bar. Layout only — ant components keep their own design-system look. -@pf-primary: #1c2d56; +@pf-primary: #1d4ed8; @pf-ink: #101828; @pf-muted: #8a94a6; @pf-line: #eef0f5; @@ -106,7 +106,7 @@ border-radius: 11px; font-size: 16px; color: @pf-primary; - background: rgba(28, 45, 86, 0.07); + background: rgba(29, 78, 216, 0.07); } .pf-section__action { flex-shrink: 0; diff --git a/apps/admin-panel/src/assets/styles/rtl-overrides.css b/apps/admin-panel/src/assets/styles/rtl-overrides.css index e3e1da0..217d7f2 100644 --- a/apps/admin-panel/src/assets/styles/rtl-overrides.css +++ b/apps/admin-panel/src/assets/styles/rtl-overrides.css @@ -27,9 +27,9 @@ * Keep in sync with App.vue `antTheme` tokens. */ :root { - --selected-bg: rgba(28, 45, 86, 0.08); - --selected-bg-hover: rgba(28, 45, 86, 0.12); - --hover-bg: rgba(28, 45, 86, 0.04); + --selected-bg: rgba(29, 78, 216, 0.08); + --selected-bg-hover: rgba(29, 78, 216, 0.12); + --hover-bg: rgba(29, 78, 216, 0.04); } .ant-menu-light .ant-menu-item-selected, @@ -42,7 +42,7 @@ .vertical-nav-menu .ant-menu-item-selected:hover, .vertical-nav-menu .ant-menu-sub .ant-menu-item-selected, .vertical-nav-menu .ant-menu-sub .ant-menu-item-selected:hover { - color: var(--primary-color, #1c2d56) !important; + color: var(--primary-color, #1d4ed8) !important; background: var(--selected-bg) !important; font-weight: 600; } @@ -50,7 +50,7 @@ .ant-menu-light .ant-menu-item-selected .anticon, .ant-menu-inline .ant-menu-item-selected .anticon, .vertical-nav-menu .ant-menu-item-selected .anticon { - color: var(--primary-color, #1c2d56) !important; + color: var(--primary-color, #1d4ed8) !important; } .ant-menu-light .ant-menu-item-selected::after, @@ -63,7 +63,7 @@ /* Select / Cascader / TreeSelect / Transfer / Mentions / Dropdown */ .ant-select-item-option-selected:not(.ant-select-item-option-disabled), .ant-select-item-option-active:not(.ant-select-item-option-disabled) { - color: var(--primary-color, #1c2d56) !important; + color: var(--primary-color, #1d4ed8) !important; } .ant-select-item-option-selected:not(.ant-select-item-option-disabled) { @@ -84,7 +84,7 @@ .ant-dropdown-menu-submenu-title-selected, .ant-transfer-list-content-item-checked, .ant-mentions-dropdown-menu-item-active { - color: var(--primary-color, #1c2d56) !important; + color: var(--primary-color, #1d4ed8) !important; background: var(--selected-bg) !important; } diff --git a/apps/admin-panel/src/assets/styles/utilities.less b/apps/admin-panel/src/assets/styles/utilities.less index 6a3f7d3..531b43f 100644 --- a/apps/admin-panel/src/assets/styles/utilities.less +++ b/apps/admin-panel/src/assets/styles/utilities.less @@ -31,7 +31,7 @@ // LESS build to feed); nothing in the app should reference `--primary`/ // `--accent` any more — use the brand tokens below instead. :root { - --primary-color: #1c2d56; + --primary-color: #1d4ed8; --secondary-color: #836447; --third-color: #f5cb55; --success-color: #28c76f; diff --git a/apps/admin-panel/src/components/statistics-cards/StatisticsCardLine.vue b/apps/admin-panel/src/components/statistics-cards/StatisticsCardLine.vue index 3be2612..cb5a474 100644 --- a/apps/admin-panel/src/components/statistics-cards/StatisticsCardLine.vue +++ b/apps/admin-panel/src/components/statistics-cards/StatisticsCardLine.vue @@ -76,8 +76,8 @@ const iconComponent = computed(() => ICONS[props.icon ?? ''] ?? BarChartOutlined border-radius: 8px; font-size: 20px; flex-shrink: 0; - background: rgba(28, 45, 86, 0.06); - color: #1c2d56; + background: rgba(29, 78, 216, 0.06); + color: #1d4ed8; } .stat-copy { @@ -96,7 +96,7 @@ const iconComponent = computed(() => ICONS[props.icon ?? ''] ?? BarChartOutlined margin: 0; font-size: 20px; font-weight: 600; - color: #1c2d56; + color: #1d4ed8; line-height: 1.25; word-break: break-word; } diff --git a/apps/admin-panel/src/components/upload/GalleryUploadInput.vue b/apps/admin-panel/src/components/upload/GalleryUploadInput.vue index 5fb5d8a..794097d 100644 --- a/apps/admin-panel/src/components/upload/GalleryUploadInput.vue +++ b/apps/admin-panel/src/components/upload/GalleryUploadInput.vue @@ -212,7 +212,7 @@ onBeforeUnmount(() => { } .gallery-upload__icon { font-size: 16px; - color: #1c2d56; + color: #1d4ed8; opacity: 0.75; } .gallery-upload__title { @@ -279,7 +279,7 @@ onBeforeUnmount(() => { border: none; border-radius: 9px; background: rgba(255, 255, 255, 0.92); - color: #1c2d56; + color: #1d4ed8; font-size: 15px; cursor: pointer; transition: transform 0.15s ease; @@ -318,6 +318,6 @@ onBeforeUnmount(() => { display: inline-flex; align-items: center; gap: 6px; - color: #1c2d56; + color: #1d4ed8; } diff --git a/apps/admin-panel/src/components/x-table/XTable.vue b/apps/admin-panel/src/components/x-table/XTable.vue index 1554ff1..aefe1a9 100644 --- a/apps/admin-panel/src/components/x-table/XTable.vue +++ b/apps/admin-panel/src/components/x-table/XTable.vue @@ -642,7 +642,7 @@ defineExpose({ fetch }); } .x-card__name { font-weight: 600; - color: #1c2d56; + color: #1d4ed8; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; diff --git a/apps/admin-panel/src/layouts/components/TheNavbar.vue b/apps/admin-panel/src/layouts/components/TheNavbar.vue index 9e115ad..5799910 100644 --- a/apps/admin-panel/src/layouts/components/TheNavbar.vue +++ b/apps/admin-panel/src/layouts/components/TheNavbar.vue @@ -26,7 +26,7 @@