diff --git a/index.html b/index.html
index 17457d3..2904fd4 100644
--- a/index.html
+++ b/index.html
@@ -7,6 +7,9 @@
+
+
+
%VITE_APP_TITLE%
\ No newline at end of file
+
diff --git a/src/main.js b/src/main.js
index f281aea..b5d5dc6 100644
--- a/src/main.js
+++ b/src/main.js
@@ -8,6 +8,7 @@ import 'element-plus/theme-chalk/dark/css-vars.css'
import locale from 'element-plus/es/locale/lang/zh-cn'
import '@/assets/styles/index.scss' // global css
+import '@/styles/retro.css' // retro theme overrides must load after Element Plus and the base styles
import App from './App'
import store from './store'
diff --git a/src/store/modules/settings.js b/src/store/modules/settings.js
index 95841ee..de49396 100644
--- a/src/store/modules/settings.js
+++ b/src/store/modules/settings.js
@@ -15,7 +15,7 @@ const useSettingsStore = defineStore(
{
state: () => ({
title: '',
- theme: storageSetting.theme || '#409EFF',
+ theme: storageSetting.theme || '#008080',
sideTheme: storageSetting.sideTheme || sideTheme,
showSettings: showSettings,
navType: storageSetting.navType === undefined ? navType : storageSetting.navType,
diff --git a/src/styles/retro.css b/src/styles/retro.css
new file mode 100644
index 0000000..c34cce1
--- /dev/null
+++ b/src/styles/retro.css
@@ -0,0 +1,522 @@
+:root {
+ /* Core palette: aged paper, oxidized teal and workshop brown. */
+ --retro-bg-page: #faf3df;
+ --retro-bg-white: #fffaf0;
+ --retro-bg-muted: #efe4ca;
+ --retro-bg-deep: #3b342a;
+ --retro-border-dark: #7a674f;
+ --retro-border-strong: #4b3d30;
+ --retro-text-primary: #211b12;
+ --retro-text-regular: #504737;
+ --retro-text-secondary: #7c7160;
+ --retro-primary: #008080;
+ --retro-primary-dark: #005e5e;
+ --retro-primary-soft: #d4e4dc;
+ --retro-ochre: #b07a2a;
+ --retro-danger: #9a4035;
+ --retro-success: #65743f;
+ --retro-radius-none: 0px;
+ --retro-radius-sm: 2px;
+ --retro-border-width: 2px;
+ --retro-shadow-hard: 4px 4px 0 0 rgba(33, 27, 18, 0.3);
+ --retro-shadow-small: 2px 2px 0 0 rgba(33, 27, 18, 0.32);
+ --retro-shadow-inset: inset 2px 2px 0 rgba(75, 61, 48, 0.14);
+ --retro-font-display: "Playfair Display", "Noto Serif SC", "Songti SC", STSong, Georgia, "Times New Roman", serif;
+ --retro-font-body: "Noto Sans SC", "Microsoft YaHei", "PingFang SC", Arial, sans-serif;
+ --retro-paper-texture: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.82' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='.055'/%3E%3C/svg%3E");
+
+ /* Element Plus theme bridge. */
+ --el-color-primary: var(--retro-primary);
+ --el-color-primary-rgb: 0, 128, 128;
+ --el-color-success: var(--retro-success);
+ --el-color-warning: var(--retro-ochre);
+ --el-color-danger: var(--retro-danger);
+ --el-color-error: var(--retro-danger);
+ --el-color-info: #746b5d;
+
+ --el-bg-color: var(--retro-bg-white);
+ --el-bg-color-page: var(--retro-bg-page);
+ --el-bg-color-overlay: var(--retro-bg-white);
+ --el-text-color-primary: var(--retro-text-primary);
+ --el-text-color-regular: var(--retro-text-regular);
+ --el-text-color-secondary: var(--retro-text-secondary);
+ --el-text-color-placeholder: #998c78;
+ --el-text-color-disabled: #aa9d87;
+
+ --el-border-color-darker: var(--retro-border-strong);
+ --el-border-color-dark: #665442;
+ --el-border-color: var(--retro-border-dark);
+ --el-border-color-light: #a58f70;
+ --el-border-color-lighter: #c7b99d;
+ --el-border-color-extra-light: #ddd1b7;
+ --el-border-radius-base: var(--retro-radius-sm);
+ --el-border-radius-small: var(--retro-radius-none);
+ --el-border-radius-round: var(--retro-radius-sm);
+ --el-border-radius-circle: var(--retro-radius-sm);
+
+ --el-fill-color: #e8dcc0;
+ --el-fill-color-light: #f0e6cf;
+ --el-fill-color-lighter: #f5ecd9;
+ --el-fill-color-extra-light: #faf3e3;
+ --el-fill-color-dark: #d8c8a8;
+ --el-fill-color-darker: #c9b58f;
+ --el-fill-color-blank: var(--retro-bg-white);
+ --el-disabled-bg-color: #eadfc7;
+ --el-disabled-text-color: #948874;
+ --el-disabled-border-color: #b9aa8e;
+ --el-mask-color: rgba(33, 27, 18, 0.58);
+ --el-mask-color-extra-light: rgba(33, 27, 18, 0.25);
+ --el-box-shadow: var(--retro-shadow-hard);
+ --el-box-shadow-light: var(--retro-shadow-hard);
+ --el-box-shadow-lighter: var(--retro-shadow-small);
+ --el-box-shadow-dark: 6px 6px 0 rgba(20, 16, 11, 0.48);
+ --el-font-family: var(--retro-font-body);
+
+ /* Existing layout variables. */
+ --main-fill-bg: var(--retro-bg-page);
+ --navbar-bg: #f4ead2;
+ --navbar-text: var(--retro-text-primary);
+ --navbar-hover: #e4d5b7;
+ --sidebar-bg: var(--retro-bg-deep);
+ --sidebar-text: #e7dac0;
+ --sidebar-logo-text: #fff4dc;
+ --menu-hover: #554a3a;
+ --menu-active-text: #f3cf7a;
+ --tags-bg: #e9dcc0;
+ --tags-item-bg: #fff7e7;
+ --tags-item-border: var(--retro-border-dark);
+ --tags-item-text: var(--retro-text-regular);
+ --tags-item-hover: #dfd0b2;
+ --tags-close-hover: #806b50;
+ --splitpanes-default-bg: var(--retro-bg-white);
+}
+
+html,
+body,
+#app {
+ background-color: var(--retro-bg-page);
+}
+
+body {
+ color: var(--retro-text-primary);
+ font-family: var(--retro-font-body);
+ background-image: var(--retro-paper-texture);
+ background-attachment: fixed;
+}
+
+body,
+button,
+input,
+textarea,
+select {
+ letter-spacing: 0;
+}
+
+::selection {
+ color: var(--retro-bg-white);
+ background: var(--retro-primary);
+}
+
+h1,
+h2,
+h3,
+h4,
+h5,
+h6,
+.retro-title,
+.el-dialog__title,
+.el-drawer__title,
+.el-card__header,
+.el-descriptions__title,
+.el-page-header__title {
+ font-family: var(--retro-font-display);
+ letter-spacing: 0;
+}
+
+/* Background and structural surfaces. */
+#app .app-main {
+ background-color: var(--retro-bg-page) !important;
+ background-image: var(--retro-paper-texture);
+}
+
+#app .app-container {
+ border: var(--retro-border-width) solid var(--retro-border-dark);
+ border-radius: var(--retro-radius-none);
+ background-color: rgba(255, 250, 240, 0.96);
+ box-shadow: var(--retro-shadow-hard);
+}
+
+#app .navbar {
+ border-bottom: var(--retro-border-width) solid var(--retro-border-strong);
+ background: var(--navbar-bg) !important;
+ box-shadow: 0 3px 0 rgba(75, 61, 48, 0.3) !important;
+}
+
+#app .navbar .hamburger-container,
+#app .navbar .right-menu-item {
+ border-right: 1px solid rgba(75, 61, 48, 0.24);
+}
+
+#app .navbar .right-menu-item.hover-effect:hover,
+#app .navbar .hamburger-container:hover {
+ background: var(--navbar-hover) !important;
+}
+
+#app .navbar .user-avatar {
+ border: 2px solid var(--retro-border-strong);
+ border-radius: var(--retro-radius-sm) !important;
+ filter: sepia(0.18) contrast(1.04);
+}
+
+#app .sidebar-container {
+ border-right: 3px solid var(--retro-border-strong);
+ background: var(--retro-bg-deep) !important;
+ box-shadow: 4px 0 0 rgba(33, 27, 18, 0.25) !important;
+}
+
+#app .sidebar-logo-container,
+#app .sidebar-container .scrollbar-wrapper,
+#app .sidebar-container .el-menu {
+ --el-menu-bg-color: var(--retro-bg-deep) !important;
+ --el-menu-text-color: var(--sidebar-text) !important;
+ --el-menu-hover-bg-color: var(--menu-hover) !important;
+ background: var(--retro-bg-deep) !important;
+}
+
+#app .sidebar-logo-container {
+ border-bottom: 2px solid #8e7658;
+}
+
+#app .sidebar-logo-container .sidebar-title {
+ color: var(--sidebar-logo-text) !important;
+ font-family: var(--retro-font-display) !important;
+ font-weight: 700 !important;
+}
+
+#app .sidebar-container .el-menu-item,
+#app .sidebar-container .el-sub-menu__title {
+ color: var(--sidebar-text) !important;
+ border-left: 4px solid transparent;
+}
+
+#app .sidebar-container .el-menu-item:hover,
+#app .sidebar-container .el-sub-menu__title:hover {
+ background: var(--menu-hover) !important;
+}
+
+#app .sidebar-container .el-menu-item.is-active {
+ color: var(--menu-active-text) !important;
+ border-left-color: var(--retro-primary);
+ background: #594d3c !important;
+ font-weight: 700;
+}
+
+#app .tags-view-container {
+ border-bottom: 2px solid var(--retro-border-strong) !important;
+ background: var(--tags-bg) !important;
+ box-shadow: 0 3px 0 rgba(75, 61, 48, 0.22) !important;
+}
+
+#app .tags-view-container .tags-view-item {
+ border: 1px solid var(--retro-border-dark) !important;
+ border-radius: 0 !important;
+ background: var(--tags-item-bg) !important;
+ color: var(--tags-item-text) !important;
+}
+
+#app .tags-view-container .tags-view-item.active {
+ border-color: var(--retro-primary-dark) !important;
+ background: var(--retro-primary) !important;
+ color: #fffaf0 !important;
+ box-shadow: 2px 2px 0 rgba(33, 27, 18, 0.28);
+}
+
+#app .tags-view-container .tags-view-item.active::before {
+ border-radius: 0 !important;
+ background: #f3cf7a !important;
+}
+
+/* Element Plus: hard edges and mechanical interaction. */
+.el-button {
+ border-width: 2px;
+ border-radius: var(--retro-radius-sm);
+ box-shadow: var(--retro-shadow-small);
+ font-weight: 700;
+}
+
+.el-button:not(.is-disabled):hover {
+ transform: translate(-1px, -1px);
+ box-shadow: 3px 3px 0 rgba(33, 27, 18, 0.32);
+}
+
+.el-button:not(.is-disabled):active {
+ transform: translate(2px, 2px);
+ box-shadow: none;
+}
+
+.el-button.is-circle,
+.el-button.is-round {
+ border-radius: var(--retro-radius-sm);
+}
+
+.el-button.is-text,
+.el-button.is-link,
+.el-button--text {
+ border-color: transparent;
+ box-shadow: none;
+}
+
+.el-input__wrapper,
+.el-select__wrapper,
+.el-textarea__inner,
+.el-input-number,
+.el-date-editor.el-input__wrapper {
+ border: 2px solid var(--retro-border-dark);
+ border-radius: var(--retro-radius-sm);
+ background-color: var(--retro-bg-white);
+ box-shadow: var(--retro-shadow-inset) !important;
+}
+
+.el-input__wrapper:hover,
+.el-select__wrapper:hover,
+.el-textarea__inner:hover,
+.el-input-number:hover {
+ border-color: var(--retro-primary);
+}
+
+.el-input__wrapper.is-focus,
+.el-select__wrapper.is-focused,
+.el-textarea__inner:focus {
+ border-color: var(--retro-primary);
+ box-shadow: var(--retro-shadow-inset), 2px 2px 0 rgba(0, 128, 128, 0.35) !important;
+}
+
+.el-card,
+.el-dialog,
+.el-message-box,
+.el-drawer,
+.el-popover.el-popper,
+.el-dropdown__popper,
+.el-select__popper,
+.el-picker__popper {
+ border: 2px solid var(--retro-border-strong);
+ border-radius: var(--retro-radius-none);
+ background-color: var(--retro-bg-white);
+ box-shadow: var(--retro-shadow-hard) !important;
+}
+
+.el-card__header,
+.el-dialog__header,
+.el-message-box__header,
+.el-drawer__header {
+ border-bottom: 2px solid var(--retro-border-dark);
+ background: var(--retro-bg-muted);
+}
+
+.el-dialog__header,
+.el-message-box__header {
+ margin-right: 0;
+ padding-bottom: 16px;
+}
+
+.el-dialog__footer,
+.el-message-box__btns {
+ border-top: 1px solid var(--retro-border-dark);
+ background: #f7eedb;
+}
+
+.el-table {
+ --el-table-border-color: var(--retro-border-dark);
+ --el-table-header-bg-color: var(--retro-bg-muted);
+ --el-table-header-text-color: var(--retro-text-primary);
+ --el-table-row-hover-bg-color: #eee2c8;
+ border: 2px solid var(--retro-border-dark);
+ border-radius: 0;
+}
+
+.el-table th.el-table__cell {
+ border-bottom: 2px solid var(--retro-border-dark);
+ background: var(--retro-bg-muted) !important;
+ font-family: var(--retro-font-display);
+ font-weight: 700;
+}
+
+.el-table td.el-table__cell {
+ border-bottom-color: #c9b999;
+}
+
+.el-table::before,
+.el-table--border::after,
+.el-table--border::before,
+.el-table__inner-wrapper::before {
+ background-color: var(--retro-border-dark) !important;
+}
+
+.el-tabs__nav-wrap::after {
+ height: 2px;
+ background-color: var(--retro-border-dark);
+}
+
+.el-tabs__active-bar {
+ height: 3px;
+ background-color: var(--retro-primary);
+}
+
+.el-tag,
+.el-badge__content,
+.el-segmented,
+.el-checkbox__inner,
+.el-radio__inner,
+.el-switch__core,
+.el-progress-bar__outer,
+.el-pagination button,
+.el-pager li {
+ border-radius: var(--retro-radius-none) !important;
+}
+
+.el-tag {
+ border-width: 1px;
+ font-weight: 700;
+}
+
+.el-checkbox__inner,
+.el-radio__inner {
+ border-width: 2px;
+}
+
+.el-pagination button,
+.el-pager li {
+ border: 1px solid var(--retro-border-dark);
+ margin: 0 2px;
+ background: var(--retro-bg-white) !important;
+}
+
+.el-pager li.is-active {
+ background: var(--retro-primary) !important;
+ color: #fffaf0;
+}
+
+.el-alert,
+.el-collapse,
+.el-collapse-item__header,
+.el-collapse-item__wrap,
+.el-descriptions,
+.el-upload-dragger,
+.el-tree,
+.el-menu--popup {
+ border-radius: var(--retro-radius-none) !important;
+}
+
+.el-upload-dragger {
+ border: 2px dashed var(--retro-border-dark);
+ background: #fbf3e1;
+}
+
+.el-tooltip__trigger:focus-visible,
+button:focus-visible,
+a:focus-visible,
+input:focus-visible,
+textarea:focus-visible {
+ outline: 3px double var(--retro-primary);
+ outline-offset: 2px;
+}
+
+.el-loading-mask {
+ background-color: rgba(250, 243, 223, 0.82);
+}
+
+.el-message,
+.el-notification {
+ border: 2px solid var(--retro-border-strong);
+ border-radius: 0;
+ box-shadow: var(--retro-shadow-hard);
+}
+
+#nprogress .bar {
+ height: 3px !important;
+ background: var(--retro-primary) !important;
+}
+
+::-webkit-scrollbar {
+ width: 10px !important;
+ height: 10px !important;
+}
+
+::-webkit-scrollbar-track {
+ border-left: 1px solid var(--retro-border-dark);
+ background: #e1d3b6 !important;
+}
+
+::-webkit-scrollbar-thumb {
+ border: 1px solid var(--retro-border-strong);
+ border-radius: 0 !important;
+ background: #8c7a61 !important;
+}
+
+/* Dark mode remains archival and warm instead of returning to modern blue-black. */
+html.dark {
+ color-scheme: dark;
+ --retro-bg-page: #1e1c17;
+ --retro-bg-white: #29261f;
+ --retro-bg-muted: #373126;
+ --retro-border-dark: #917b5d;
+ --retro-border-strong: #bd9d6d;
+ --retro-text-primary: #f1e4c7;
+ --retro-text-regular: #d4c5a8;
+ --retro-text-secondary: #aa9b81;
+ --retro-shadow-hard: 4px 4px 0 0 rgba(0, 0, 0, 0.72);
+ --retro-shadow-small: 2px 2px 0 0 rgba(0, 0, 0, 0.72);
+ --el-bg-color: var(--retro-bg-white);
+ --el-bg-color-page: var(--retro-bg-page);
+ --el-bg-color-overlay: #302c23;
+ --el-text-color-primary: var(--retro-text-primary);
+ --el-text-color-regular: var(--retro-text-regular);
+ --el-text-color-secondary: var(--retro-text-secondary);
+ --el-border-color: var(--retro-border-dark);
+ --el-border-color-light: #74644e;
+ --el-border-color-lighter: #5d513f;
+ --el-border-color-extra-light: #4c4335;
+ --el-fill-color: #3e382d;
+ --el-fill-color-light: #373229;
+ --el-fill-color-lighter: #322e26;
+ --el-fill-color-extra-light: #2d2a23;
+ --el-fill-color-blank: var(--retro-bg-white);
+ --main-fill-bg: var(--retro-bg-page);
+ --navbar-bg: #302b22;
+ --navbar-text: var(--retro-text-primary);
+ --navbar-hover: #493f31;
+ --tags-bg: #352f25;
+ --tags-item-bg: #29261f;
+ --tags-item-border: #806d53;
+ --tags-item-text: var(--retro-text-regular);
+}
+
+html.dark #app .app-container {
+ background-color: rgba(41, 38, 31, 0.96);
+}
+
+html.dark .el-loading-mask {
+ background-color: rgba(30, 28, 23, 0.82);
+}
+
+@media (prefers-reduced-motion: reduce) {
+ *,
+ *::before,
+ *::after {
+ scroll-behavior: auto !important;
+ transition-duration: 0.01ms !important;
+ animation-duration: 0.01ms !important;
+ animation-iteration-count: 1 !important;
+ }
+}
+
+@media (max-width: 768px) {
+ #app .app-main {
+ padding: 12px;
+ }
+
+ #app .app-container {
+ padding: 14px;
+ box-shadow: 3px 3px 0 rgba(33, 27, 18, 0.28);
+ }
+}
diff --git a/src/views/flow/components/Aside.vue b/src/views/flow/components/Aside.vue
index a818eef..c85c3f7 100644
--- a/src/views/flow/components/Aside.vue
+++ b/src/views/flow/components/Aside.vue
@@ -96,13 +96,15 @@ const handleDragCustom = (event, node) => {
height: 100%;
min-height: 0;
flex-direction: column;
- color: #1f2937;
+ color: var(--retro-text-primary);
+ background: #f1e7d0;
}
.library-header {
padding: 16px 14px 14px;
- border-bottom: 1px solid #e4e8ef;
- background: #fff;
+ border-bottom: 2px solid var(--retro-border-dark);
+ background-color: var(--retro-bg-white);
+ background-image: var(--retro-paper-texture);
}
.library-heading {
@@ -113,13 +115,15 @@ const handleDragCustom = (event, node) => {
}
.library-title {
+ color: var(--retro-text-primary);
+ font-family: var(--retro-font-display);
font-size: 15px;
font-weight: 650;
}
.library-subtitle {
margin-top: 2px;
- color: #8a94a6;
+ color: var(--retro-text-secondary);
font-size: 12px;
}
@@ -138,16 +142,16 @@ const handleDragCustom = (event, node) => {
.el-collapse-item__header {
height: 46px;
padding: 0 14px;
- border-bottom-color: #e8ebf0;
- background: #f8fafc;
- color: #344054;
+ border-bottom: 1px solid var(--retro-border-dark);
+ background: #efe4ca;
+ color: var(--retro-text-primary);
font-size: 13px;
font-weight: 600;
}
.el-collapse-item__wrap {
- border-bottom-color: #e8ebf0;
- background: #f8fafc;
+ border-bottom: 1px solid var(--retro-border-dark);
+ background: #f7eedb;
}
.el-collapse-item__content {
@@ -170,10 +174,10 @@ const handleDragCustom = (event, node) => {
height: 20px;
padding: 0 6px;
place-items: center;
- border: 1px solid #dfe4ec;
- border-radius: 4px;
- background: #fff;
- color: #7a8597;
+ border: 1px solid var(--retro-border-dark);
+ border-radius: 0;
+ background: var(--retro-bg-white);
+ color: var(--retro-text-regular);
font-size: 11px;
font-weight: 500;
line-height: 18px;
@@ -192,16 +196,18 @@ const handleDragCustom = (event, node) => {
gap: 9px;
align-items: center;
padding: 9px 8px 9px 10px;
- border: 1px solid #e1e6ed;
- border-radius: 7px;
- background: #fff;
+ border: 2px solid var(--retro-border-dark);
+ border-radius: 0;
+ background-color: var(--retro-bg-white);
+ background-image: var(--retro-paper-texture);
+ box-shadow: 2px 2px 0 rgba(33, 27, 18, 0.22);
cursor: grab;
transition: border-color 0.16s ease, box-shadow 0.16s ease, transform 0.16s ease;
&:hover {
- border-color: #f2a071;
- box-shadow: 0 5px 14px rgba(31, 41, 55, 0.08);
- transform: translateX(2px);
+ border-color: var(--retro-primary);
+ box-shadow: 4px 4px 0 rgba(33, 27, 18, 0.28);
+ transform: translate(-1px, -1px);
}
&:active { cursor: grabbing; }
@@ -212,8 +218,9 @@ const handleDragCustom = (event, node) => {
width: 34px;
height: 34px;
place-items: center;
- border-radius: 6px;
- background: #f1f5f9;
+ border: 1px solid var(--retro-border-dark);
+ border-radius: 0;
+ background: var(--retro-bg-muted);
img {
width: 21px;
@@ -226,7 +233,8 @@ const handleDragCustom = (event, node) => {
.node-name {
overflow: hidden;
- color: #202938;
+ color: var(--retro-text-primary);
+ font-family: var(--retro-font-display);
font-size: 13px;
font-weight: 600;
text-overflow: ellipsis;
@@ -237,7 +245,7 @@ const handleDragCustom = (event, node) => {
display: -webkit-box;
overflow: hidden;
margin-top: 4px;
- color: #7a8597;
+ color: var(--retro-text-secondary);
font-size: 11px;
line-height: 16px;
-webkit-box-orient: vertical;
@@ -245,7 +253,7 @@ const handleDragCustom = (event, node) => {
}
.drag-handle {
- color: #a8b0bf;
+ color: var(--retro-border-dark);
font-size: 16px;
}
diff --git a/src/views/flow/components/NodeState.vue b/src/views/flow/components/NodeState.vue
index 8c11ff3..46845c8 100644
--- a/src/views/flow/components/NodeState.vue
+++ b/src/views/flow/components/NodeState.vue
@@ -94,10 +94,10 @@ defineExpose({ closePopover });
gap: 8px;
margin: -4px -4px 10px;
padding: 5px 7px 5px 9px;
- border: 1px solid #dbe3ee;
- border-radius: 6px;
- background: #f7f9fc;
- color: #526071;
+ border: 1px solid var(--retro-border-dark);
+ border-radius: 0;
+ background: var(--retro-bg-muted);
+ color: var(--retro-text-regular);
font-size: 12px;
}
@@ -125,9 +125,9 @@ defineExpose({ closePopover });
align-items: center;
gap: 4px;
padding: 0 7px;
- border: 0;
- border-radius: 4px;
- background: rgba(255, 255, 255, 0.72);
+ border: 1px solid currentColor;
+ border-radius: 0;
+ background: rgba(255, 250, 240, 0.76);
color: inherit;
cursor: pointer;
font-size: 11px;
@@ -135,28 +135,28 @@ defineExpose({ closePopover });
}
.node-state--success {
- border-color: #c8ead5;
- background: #effaf3;
- color: #1e7d49;
+ border-color: #65743f;
+ background: #e2e3c7;
+ color: #536431;
}
.node-state--failed,
.node-state--stopped {
- border-color: #f1cecb;
- background: #fff3f2;
- color: #c33b32;
+ border-color: #9a4035;
+ background: #efd8cf;
+ color: #8f332c;
}
.node-state--paused {
- border-color: #d9dee7;
- background: #f3f5f8;
- color: #657084;
+ border-color: #746b5d;
+ background: #e7dcc5;
+ color: #61594d;
}
.node-state--running {
- border-color: #cbdcf8;
- background: #f0f6ff;
- color: #2f6fca;
+ border-color: #406e72;
+ background: #d9e5e2;
+ color: #315f63;
.node-state__icon { animation: rotate-animation 1.2s linear infinite; }
}
@@ -176,11 +176,12 @@ defineExpose({ closePopover });
padding: 14px 16px;
}
- .result-section--output { border-top: 1px solid #e8ebf0; }
+ .result-section--output { border-top: 1px solid var(--retro-border-dark); }
.result-section__title {
margin-bottom: 8px;
- color: #344054;
+ color: var(--retro-text-primary);
+ font-family: var(--retro-font-display);
font-size: 13px;
font-weight: 650;
}
@@ -188,7 +189,7 @@ defineExpose({ closePopover });
.result-section__content {
max-height: 280px;
overflow: auto;
- color: #475467;
+ color: var(--retro-text-regular);
font-size: 12px;
}
}
diff --git a/src/views/flow/components/NodeTitle.vue b/src/views/flow/components/NodeTitle.vue
index 8859e9e..2ef33cb 100644
--- a/src/views/flow/components/NodeTitle.vue
+++ b/src/views/flow/components/NodeTitle.vue
@@ -218,9 +218,10 @@ onMounted(() => {
height: 36px;
flex: 0 0 36px;
place-items: center;
- border-radius: 7px;
- background: #f1f5f9;
- color: var(--node-accent, #475569);
+ border: 1px solid var(--retro-border-dark);
+ border-radius: 0;
+ background: var(--retro-bg-muted);
+ color: var(--node-accent, #406e72);
img {
width: 22px;
@@ -240,7 +241,8 @@ onMounted(() => {
.node-title__name {
overflow: hidden;
- color: #1f2937;
+ color: var(--retro-text-primary);
+ font-family: var(--retro-font-display);
font-size: 15px;
font-weight: 650;
line-height: 22px;
@@ -251,10 +253,10 @@ onMounted(() => {
.node-title__type {
flex: 0 0 auto;
padding: 1px 6px;
- border: 1px solid #dfe4ec;
- border-radius: 4px;
- background: #f8fafc;
- color: #697386;
+ border: 1px solid var(--retro-border-dark);
+ border-radius: 0;
+ background: #f0e6cf;
+ color: var(--retro-text-regular);
font-size: 10px;
font-weight: 600;
}
@@ -287,31 +289,32 @@ onMounted(() => {
padding: 0;
place-items: center;
border: 1px solid transparent;
- border-radius: 5px;
+ border-radius: 0;
background: transparent;
- color: #7b8494;
+ color: var(--retro-text-secondary);
cursor: pointer;
transition: color 0.15s ease, background-color 0.15s ease, border-color 0.15s ease;
&:hover {
- border-color: #dfe4ec;
- background: #f8fafc;
- color: #344054;
+ border-color: var(--retro-border-dark);
+ background: var(--retro-bg-muted);
+ color: var(--retro-text-primary);
+ box-shadow: 2px 2px 0 rgba(33, 27, 18, 0.24);
}
&.is-run:hover {
- border-color: #b7dfc7;
- background: #effaf3;
- color: #168447;
+ border-color: #65743f;
+ background: #e2e3c7;
+ color: #536431;
}
&.is-danger:hover {
- border-color: #f2c5c2;
- background: #fff3f2;
- color: #d93025;
+ border-color: #9a4035;
+ background: #efd8cf;
+ color: #8f332c;
}
- &.is-confirm { color: #168447; }
+ &.is-confirm { color: #65743f; }
}
.node-title__editor {
@@ -325,7 +328,7 @@ onMounted(() => {
display: -webkit-box;
overflow: hidden;
margin-top: 8px;
- color: #7a8494;
+ color: var(--retro-text-secondary);
font-size: 12px;
line-height: 18px;
-webkit-box-orient: vertical;
diff --git a/src/views/flow/index.vue b/src/views/flow/index.vue
index c6e0bf4..8025322 100644
--- a/src/views/flow/index.vue
+++ b/src/views/flow/index.vue
@@ -173,7 +173,7 @@
-
+
@@ -528,11 +528,11 @@ const defaultEdgeOptions = {
interactionWidth: 32,
markerEnd: {
type: MarkerType.ArrowClosed,
- color: "#ff6b35",
+ color: "#8b4513",
width: 20,
height: 20,
},
- style: { stroke: "#ff6b35", strokeWidth: 2 },
+ style: { stroke: "#8b4513", strokeWidth: 2 },
};
/**
@@ -2723,10 +2723,10 @@ onUnmounted(() => {
gap: 12px;
margin-bottom: 16px;
padding: 10px 12px;
- border: 1px solid #dfe6ef;
- border-radius: 6px;
- background: #f7f9fc;
- color: #65758b;
+ border: 2px solid var(--retro-border-dark);
+ border-radius: 0;
+ background: var(--retro-bg-muted);
+ color: var(--retro-text-regular);
font-size: 13px;
}
@@ -2753,8 +2753,10 @@ onUnmounted(() => {
align-items: center;
justify-content: space-between;
padding: 0 16px;
- border-bottom: 1px solid #e3e7ee;
- background: #fff;
+ border-bottom: 3px solid var(--retro-border-strong);
+ background-color: var(--retro-bg-white);
+ background-image: var(--retro-paper-texture);
+ box-shadow: 0 3px 0 rgba(33, 27, 18, 0.22);
gap: 18px;
.flow-heading {
@@ -2767,7 +2769,8 @@ onUnmounted(() => {
.flow-heading__name {
overflow: hidden;
max-width: 320px;
- color: #1f2937;
+ color: var(--retro-text-primary);
+ font-family: var(--retro-font-display);
font-size: 16px;
font-weight: 650;
text-overflow: ellipsis;
@@ -2780,10 +2783,10 @@ onUnmounted(() => {
align-items: center;
gap: 6px;
padding: 0 8px;
- border: 1px solid #dfe4ec;
- border-radius: 5px;
- background: #f8fafc;
- color: #687386;
+ border: 1px solid var(--retro-border-dark);
+ border-radius: 0;
+ background: #efe4ca;
+ color: var(--retro-text-regular);
font-size: 11px;
white-space: nowrap;
}
@@ -2791,35 +2794,35 @@ onUnmounted(() => {
.flow-status__dot {
width: 6px;
height: 6px;
- border-radius: 50%;
+ border-radius: 0;
background: currentColor;
}
.flow-status--release,
.flow-status--testRunFinish {
- border-color: #c8ead5;
- background: #effaf3;
- color: #1e7d49;
+ border-color: #65743f;
+ background: #e2e3c7;
+ color: #536431;
}
.flow-status--testRunning,
.flow-status--updateData {
- border-color: #cbdcf8;
- background: #f0f6ff;
- color: #2f6fca;
+ border-color: #406e72;
+ background: #d9e5e2;
+ color: #315f63;
}
.flow-status--testRunError,
.flow-status--stop {
- border-color: #f1cecb;
- background: #fff3f2;
- color: #c33b32;
+ border-color: #9a4035;
+ background: #efd8cf;
+ color: #8f332c;
}
.flow-status--pause {
- border-color: #ead9b8;
- background: #fff9eb;
- color: #9a6700;
+ border-color: #a06a1e;
+ background: #f1dec0;
+ color: #82551a;
}
.btn__container {
@@ -2838,7 +2841,7 @@ onUnmounted(() => {
.publish-actions {
padding-left: 10px;
- border-left: 1px solid #e4e8ef;
+ border-left: 2px solid var(--retro-border-dark);
}
}
}
@@ -2851,14 +2854,16 @@ onUnmounted(() => {
padding: 0;
position: relative;
overflow: hidden;
+ background: var(--retro-bg-page);
}
.el-aside {
margin: 0;
width: 272px;
padding: 0;
- border-right: 1px solid #e3e7ee;
- background: #f8fafc;
+ border-right: 3px solid var(--retro-border-strong);
+ background: #f1e7d0;
+ box-shadow: 3px 0 0 rgba(33, 27, 18, 0.18);
}
.canvas-toolbar {
@@ -2869,26 +2874,31 @@ onUnmounted(() => {
z-index: 20;
align-items: center;
padding: 4px;
- border: 1px solid #dfe4ec;
- border-radius: 7px;
- background: rgba(255, 255, 255, 0.96);
- box-shadow: 0 6px 18px rgba(31, 41, 55, 0.1);
+ border: 2px solid var(--retro-border-strong);
+ border-radius: 0;
+ background-color: rgba(255, 250, 240, 0.97);
+ background-image: var(--retro-paper-texture);
+ box-shadow: 4px 4px 0 rgba(33, 27, 18, 0.28);
.el-button {
width: 30px;
height: 30px;
padding: 0;
- border: 0;
- border-radius: 5px;
+ border: 1px solid transparent;
+ border-radius: 0;
background: transparent;
- color: #566174;
+ color: var(--retro-text-regular);
+ box-shadow: none;
}
.el-button + .el-button { margin-left: 2px; }
.el-button:hover {
- background: #f1f5f9;
- color: #1f2937;
+ border-color: var(--retro-border-dark);
+ background: var(--retro-bg-muted);
+ color: var(--retro-text-primary);
+ transform: none;
+ box-shadow: 2px 2px 0 rgba(33, 27, 18, 0.24);
}
}
@@ -2896,13 +2906,15 @@ onUnmounted(() => {
width: 1px;
height: 18px;
margin: 0 4px;
- background: #e1e6ed;
+ background: var(--retro-border-dark);
}
.flow__container {
width: 100%;
height: 100%;
cursor: pointer;
+ background-color: #faf3df;
+ background-image: var(--retro-paper-texture);
:deep(.vue-flow__node) {
border: 0;
@@ -2923,7 +2935,7 @@ onUnmounted(() => {
:deep(.vue-flow__edge-path),
:deep(.vue-flow__connection-path) {
- stroke: #ff6b35;
+ stroke: #8b4513;
stroke-width: 2;
}
@@ -2936,14 +2948,14 @@ onUnmounted(() => {
}
:deep(.vue-flow__selection) {
- border: 1px solid #2f80ed;
- background: rgba(47, 128, 237, 0.1);
- box-shadow: 0 0 0 1px rgba(47, 128, 237, 0.08);
+ border: 2px solid var(--retro-primary);
+ background: rgba(0, 128, 128, 0.1);
+ box-shadow: 3px 3px 0 rgba(0, 92, 92, 0.18);
}
:deep(.vue-flow__nodesselection-rect) {
- border: 1px dashed rgba(47, 128, 237, 0.72);
- background: rgba(47, 128, 237, 0.04);
+ border: 2px dashed var(--retro-primary);
+ background: rgba(0, 128, 128, 0.05);
}
:deep(.vue-flow__handle) {
@@ -2960,16 +2972,32 @@ onUnmounted(() => {
}
:deep(.vue-flow__edge.selected .vue-flow__edge-path) {
- stroke: #1677ff;
+ stroke: var(--retro-primary);
stroke-width: 4;
- filter: drop-shadow(0 0 3px rgba(22, 119, 255, 0.45));
+ filter: drop-shadow(2px 2px 0 rgba(33, 27, 18, 0.3));
}
:deep(.vue-flow__controls) {
overflow: hidden;
- border: 1px solid #dfe4ec;
- border-radius: 6px;
- box-shadow: 0 6px 18px rgba(20, 33, 61, 0.12);
+ border: 2px solid var(--retro-border-strong);
+ border-radius: 0;
+ box-shadow: 4px 4px 0 rgba(33, 27, 18, 0.28);
+ }
+
+ :deep(.vue-flow__controls-button) {
+ border: 0;
+ border-bottom: 1px solid var(--retro-border-dark);
+ border-radius: 0;
+ background: var(--retro-bg-white);
+ color: var(--retro-text-primary);
+
+ &:hover {
+ background: var(--retro-bg-muted);
+ }
+
+ &:last-child {
+ border-bottom: 0;
+ }
}
}
}
diff --git a/src/views/flow/nodes/common/selectAreaNode.vue b/src/views/flow/nodes/common/selectAreaNode.vue
index 27be9eb..6fffb8c 100644
--- a/src/views/flow/nodes/common/selectAreaNode.vue
+++ b/src/views/flow/nodes/common/selectAreaNode.vue
@@ -58,12 +58,13 @@ onMounted(() => {
.group__container {
width: 100%;
height: 100%;
- background: rgba(255, 255, 255, 0.96);
+ background-color: rgba(255, 250, 240, 0.97);
+ background-image: var(--retro-paper-texture);
padding: 16px;
cursor: default;
- border-radius: 8px;
- border: 1px solid #b8c5d8;
- box-shadow: none;
+ border-radius: 0;
+ border: 2px solid var(--retro-border-dark);
+ box-shadow: 5px 5px 0 rgba(33, 27, 18, 0.26);
display: flex;
flex-direction: column;
position: relative;
@@ -78,12 +79,12 @@ onMounted(() => {
top: 0;
bottom: 0;
left: 0;
- background: #64748b;
+ background: #406e72;
}
&:hover {
- border-color: #8fa0b8;
- box-shadow: 0 8px 24px rgba(31, 41, 55, 0.08);
+ border-color: var(--retro-border-strong);
+ box-shadow: 6px 6px 0 rgba(33, 27, 18, 0.3);
}
.title {
@@ -96,17 +97,18 @@ onMounted(() => {
align-items: center;
justify-content: space-between;
margin-top: 4px;
- color: #475569;
+ color: var(--retro-text-primary);
+ font-family: var(--retro-font-display);
font-size: 13px;
font-weight: 600;
}
.group-summary__count {
padding: 2px 8px;
- border: 1px solid #d9e0ea;
- border-radius: 4px;
- background: #f8fafc;
- color: #64748b;
+ border: 1px solid var(--retro-border-dark);
+ border-radius: 0;
+ background: var(--retro-bg-muted);
+ color: var(--retro-text-regular);
font-size: 12px;
font-weight: 400;
}
@@ -114,11 +116,12 @@ onMounted(() => {
.child__container {
min-height: 80px;
flex: 1;
- background-color: #f6f8fb;
- background-image: radial-gradient(#d6dde8 0.7px, transparent 0.7px);
+ background-color: #f4ead2;
+ background-image: radial-gradient(#b9aa8e 0.8px, transparent 0.8px), var(--retro-paper-texture);
background-size: 16px 16px;
- border: 1px dashed #aeb9c9;
- border-radius: 6px;
+ border: 2px dashed var(--retro-border-dark);
+ border-radius: 0;
+ box-shadow: inset 2px 2px 0 rgba(75, 61, 48, 0.12);
}
.el-row {
diff --git a/src/views/flow/nodes/function/actionQueue.vue b/src/views/flow/nodes/function/actionQueue.vue
index c711e3b..b73fbd7 100644
--- a/src/views/flow/nodes/function/actionQueue.vue
+++ b/src/views/flow/nodes/function/actionQueue.vue
@@ -21,5 +21,5 @@ defineExpose({ closePopover })
diff --git a/src/views/flow/nodes/function/currentLoop.vue b/src/views/flow/nodes/function/currentLoop.vue
index 4299bcc..fc04737 100644
--- a/src/views/flow/nodes/function/currentLoop.vue
+++ b/src/views/flow/nodes/function/currentLoop.vue
@@ -129,9 +129,10 @@ defineExpose({ closePopover })
.input__container {
width: 100%;
- background-color: #fafbfc;
+ background-color: #f0e6cf;
padding: 0 16px;
- border-radius: 8px;
+ border: 1px solid var(--retro-border-dark);
+ border-radius: 0;
box-sizing: border-box;
.title {
@@ -147,15 +148,15 @@ defineExpose({ closePopover })
.tag {
width: 3px;
height: 16px;
- background: #1664ff;
- border-radius: 0 4px 4px 0;
+ background: var(--retro-primary);
+ border-radius: 0;
margin-right: 12px;
}
.text {
font-size: 16px;
font-weight: 700;
- color: #0c0d0e;
+ color: var(--retro-text-primary);
}
}
@@ -213,9 +214,10 @@ defineExpose({ closePopover })
.output__container {
width: 100%;
- background-color: #fafbfc;
+ background-color: #f0e6cf;
padding: 0 16px;
- border-radius: 8px;
+ border: 1px solid var(--retro-border-dark);
+ border-radius: 0;
box-sizing: border-box;
.title {
@@ -226,15 +228,15 @@ defineExpose({ closePopover })
.tag {
width: 3px;
height: 16px;
- background: #1664ff;
- border-radius: 0 4px 4px 0;
+ background: var(--retro-primary);
+ border-radius: 0;
margin-right: 12px;
}
.text {
font-size: 16px;
font-weight: 700;
- color: #0c0d0e;
+ color: var(--retro-text-primary);
}
}
diff --git a/src/views/flow/nodes/function/loop.vue b/src/views/flow/nodes/function/loop.vue
index 702416b..c35c8bb 100644
--- a/src/views/flow/nodes/function/loop.vue
+++ b/src/views/flow/nodes/function/loop.vue
@@ -176,20 +176,24 @@ const setNodeName = (name) => {
.group__container {
width: 100%;
height: 100%;
- background: #fff;
+ background-color: rgba(255, 250, 240, 0.98);
+ background-image: var(--retro-paper-texture);
padding: 16px;
box-sizing: border-box;
cursor: default;
- border-radius: 8px;
- border: 1px solid #cfd7e6;
- box-shadow: none;
+ border-radius: 0;
+ border: 2px solid var(--retro-border-dark);
+ box-shadow: 5px 5px 0 rgba(33, 27, 18, 0.26);
display: flex;
flex-direction: column;
position: relative;
overflow: hidden;
transition: border-color 0.18s ease, box-shadow 0.18s ease;
- &:hover { border-color: #aeb9c9; }
+ &:hover {
+ border-color: var(--retro-border-strong);
+ box-shadow: 6px 6px 0 rgba(33, 27, 18, 0.3);
+ }
&::before {
content: "";
@@ -198,13 +202,13 @@ const setNodeName = (name) => {
left: 0;
width: 5px;
height: 100%;
- border-radius: 8px 0 0 8px;
- background: #ff6b35;
+ border-radius: 0;
+ background: #8b4513;
}
&--dragover {
- border-color: #ff6b35;
- box-shadow: inset 0 0 0 2px rgba(255, 107, 53, 0.14);
+ border-color: var(--retro-primary);
+ box-shadow: inset 0 0 0 3px rgba(0, 128, 128, 0.16), 5px 5px 0 rgba(33, 27, 18, 0.26);
}
.title {
@@ -217,17 +221,18 @@ const setNodeName = (name) => {
justify-content: space-between;
height: 30px;
margin-top: 4px;
- color: #344054;
+ color: var(--retro-text-primary);
+ font-family: var(--retro-font-display);
font-size: 13px;
font-weight: 600;
}
.loop-body-count {
padding: 2px 8px;
- color: #667085;
- border: 1px solid #dfe4ec;
- background: #f8fafc;
- border-radius: 4px;
+ color: var(--retro-text-regular);
+ border: 1px solid var(--retro-border-dark);
+ background: var(--retro-bg-muted);
+ border-radius: 0;
font-size: 12px;
font-weight: 400;
}
@@ -247,15 +252,17 @@ const setNodeName = (name) => {
.child__container {
min-height: 300px;
flex: 1;
- background-color: #f7f9fc;
- border: 1px dashed #aeb9c9;
- border-radius: 6px;
+ background-color: #f4ead2;
+ background-image: var(--retro-paper-texture);
+ border: 2px dashed var(--retro-border-dark);
+ border-radius: 0;
+ box-shadow: inset 2px 2px 0 rgba(75, 61, 48, 0.12);
transition: background-color 0.18s ease, border-color 0.18s ease;
}
&--dragover .child__container {
- background-color: #fff8f3;
- border-color: #ff6b35;
+ background-color: #dce7db;
+ border-color: var(--retro-primary);
}
.el-row {
diff --git a/src/views/flow/nodes/function/stopLoop.vue b/src/views/flow/nodes/function/stopLoop.vue
index e2f57c9..32d2da4 100644
--- a/src/views/flow/nodes/function/stopLoop.vue
+++ b/src/views/flow/nodes/function/stopLoop.vue
@@ -47,12 +47,13 @@ const setNodeName = (name) => {
.node__container {
width: 300px;
height: auto;
- background: #fff;
+ background-color: var(--retro-bg-white);
+ background-image: var(--retro-paper-texture);
padding: 12px;
cursor: default;
- border-radius: 12px;
- border: 2px solid white;
- box-shadow: 0 5px 15px 0#00000008;
+ border-radius: 0;
+ border: 2px solid var(--retro-border-dark);
+ box-shadow: 4px 4px 0 rgba(33, 27, 18, 0.28);
position: relative;
.title__container {
@@ -73,7 +74,7 @@ const setNodeName = (name) => {
}
.subTitle {
- color: #737a87;
+ color: var(--retro-text-secondary);
font-size: 12px;
margin: 8px 0;
}
@@ -82,9 +83,10 @@ const setNodeName = (name) => {
.input__container {
width: 100%;
- background-color: #fafbfc;
+ background-color: #f0e6cf;
padding: 0 16px;
- border-radius: 8px;
+ border: 1px solid var(--retro-border-dark);
+ border-radius: 0;
box-sizing: border-box;
.title {
@@ -100,15 +102,15 @@ const setNodeName = (name) => {
.tag {
width: 3px;
height: 16px;
- background: #1664ff;
- border-radius: 0 4px 4px 0;
+ background: #9a4035;
+ border-radius: 0;
margin-right: 12px;
}
.text {
font-size: 16px;
font-weight: 700;
- color: #0c0d0e;
+ color: var(--retro-text-primary);
}
}
@@ -196,7 +198,7 @@ const setNodeName = (name) => {
margin-bottom: 12px;
.paramsTitle {
- color: #0c0d0e;
+ color: var(--retro-text-primary);
font-size: 14px;
font-weight: 500;
}
diff --git a/src/views/flow/nodes/function/switch.vue b/src/views/flow/nodes/function/switch.vue
index c293922..61fe345 100644
--- a/src/views/flow/nodes/function/switch.vue
+++ b/src/views/flow/nodes/function/switch.vue
@@ -237,10 +237,11 @@ defineExpose({ closePopover });
width: 100%;
min-height: 180px;
padding: 16px;
- border: 1px solid #dfe4ec;
- border-left: 4px solid var(--node-accent, #b7791f);
- border-radius: 8px;
- background: #fff;
+ border: 2px solid var(--retro-border-dark);
+ border-left: 6px solid var(--node-accent, #a06a1e);
+ border-radius: 0;
+ background-color: var(--retro-bg-white);
+ background-image: var(--retro-paper-texture);
// box-shadow: 0 8px 24px rgba(31, 41, 55, 0.09);
box-sizing: border-box;
cursor: default;
@@ -249,7 +250,7 @@ defineExpose({ closePopover });
.condition-summary {
margin-top: 14px;
padding-top: 12px;
- border-top: 1px solid #e8ebf0;
+ border-top: 1px dashed var(--retro-border-dark);
}
.condition-summary__title,
@@ -261,13 +262,14 @@ defineExpose({ closePopover });
.condition-summary__title {
margin-bottom: 8px;
- color: #344054;
+ color: var(--retro-text-primary);
+ font-family: var(--retro-font-display);
font-size: 13px;
font-weight: 650;
}
.condition-summary__count {
- color: #98a2b3;
+ color: var(--retro-text-secondary);
font-size: 12px;
font-weight: 400;
}
@@ -276,9 +278,9 @@ defineExpose({ closePopover });
min-height: 44px;
margin-top: 6px;
padding: 0 10px;
- border: 1px solid #e4e8ef;
- border-radius: 6px;
- background: #f8fafc;
+ border: 1px solid var(--retro-border-dark);
+ border-radius: 0;
+ background: #f0e6cf;
position: relative;
&::after {
@@ -287,19 +289,19 @@ defineExpose({ closePopover });
position: absolute;
top: 50%;
right: -18px;
- border-top: 1px solid var(--node-accent, #b7791f);
+ border-top: 2px solid var(--node-accent, #a06a1e);
pointer-events: none;
}
}
.condition-summary__item--else {
- background: #fffaf0;
+ background: #f1dec0;
}
.condition-summary__order {
width: 96px;
flex: 0 0 96px;
- color: #3978c5;
+ color: var(--retro-primary-dark);
font-size: 12px;
font-weight: 650;
overflow: hidden;
@@ -309,7 +311,7 @@ defineExpose({ closePopover });
.condition-summary__text {
flex: 1;
- color: #7a8494;
+ color: var(--retro-text-secondary);
font-size: 12px;
line-height: 18px;
overflow-wrap: anywhere;
diff --git a/src/views/flow/vue-flow/FlowEdge.vue b/src/views/flow/vue-flow/FlowEdge.vue
index ca50187..922c4e2 100644
--- a/src/views/flow/vue-flow/FlowEdge.vue
+++ b/src/views/flow/vue-flow/FlowEdge.vue
@@ -79,16 +79,18 @@ const deleteEdge = () => {
height: 30px;
padding: 0;
place-items: center;
- border: 1px solid #efb8b4;
- border-radius: 50%;
- background: #fff;
- color: #d93025;
+ border: 2px solid #9a4035;
+ border-radius: 0;
+ background: var(--retro-bg-white);
+ color: #8f332c;
cursor: pointer;
- box-shadow: 0 4px 12px rgba(31, 41, 55, 0.2);
+ box-shadow: 3px 3px 0 rgba(33, 27, 18, 0.32);
&:hover {
- border-color: #d93025;
- background: #fff1f0;
+ border-color: #6f2823;
+ background: #efd8cf;
+ transform: translate(-1px, -1px);
+ box-shadow: 4px 4px 0 rgba(33, 27, 18, 0.34);
}
}
}
diff --git a/src/views/flow/vue-flow/FlowNode.vue b/src/views/flow/vue-flow/FlowNode.vue
index 772b803..b9f0ac9 100644
--- a/src/views/flow/vue-flow/FlowNode.vue
+++ b/src/views/flow/vue-flow/FlowNode.vue
@@ -260,31 +260,33 @@ onMounted(() => bindComponent(componentRef.value));