diff --git a/frontend/src/App.vue b/frontend/src/App.vue index 1c6dcc6..e9f77e5 100644 --- a/frontend/src/App.vue +++ b/frontend/src/App.vue @@ -283,9 +283,10 @@ .dropdown-menu { max-width: calc(100vw - 16px); } -/* иконки в заголовках карточек — тёмные, не выпячиваются */ +/* иконки в заголовках карточек — в цвет текста заголовка (2026-09-30: + было тёмное #3b4261 «не выпячиваются», по фидбеку стали светлее) */ .app-content .card .card-title-icon { - color: #3b4261; + color: inherit; } /* GnTagInput: подпись живёт внутри рамки поля (в отличие от GnInput) — у кита она прилипает к границе; небольшой отступ делает это незаметным всюду */ diff --git a/frontend/src/components/GardenScene.vue b/frontend/src/components/GardenScene.vue index 825d09a..c56308b 100644 --- a/frontend/src/components/GardenScene.vue +++ b/frontend/src/components/GardenScene.vue @@ -352,7 +352,8 @@ justify-content: center; width: 30px; height: 30px; - border: 1px solid var(--border, #2a2f45); + border: 2px solid var(--gn-border-color-muted, rgba(192, 202, 245, 0.24)); + border-radius: 3px; background: color-mix(in srgb, var(--bg-card, #24283b) 85%, transparent); color: var(--text, #d6dae4); font-size: 15px; @@ -387,7 +388,8 @@ gap: 3px; padding: 5px; background: var(--bg-card, #24283b); - border: 1px solid var(--border, #2a2f45); + border: 2px solid var(--gn-border-color-muted, rgba(192, 202, 245, 0.24)); + border-radius: 3px; font-size: 12px; line-height: 1.2; box-shadow: 0 4px 14px rgba(0, 0, 0, 0.4); @@ -401,7 +403,8 @@ gap: 5px; padding: 3px 8px; background: var(--bg-card, #24283b); - border: 1px solid var(--border, #2a2f45); + border: 2px solid var(--gn-border-color-muted, rgba(192, 202, 245, 0.24)); + border-radius: 3px; font-size: 12px; line-height: 1.2; white-space: nowrap; @@ -445,7 +448,8 @@ align-items: center; margin-top: 0.6rem; padding: 0.6rem 0.75rem; - border: 1px dashed var(--border, #2a2f45); + border: 2px dashed var(--gn-border-color-muted, rgba(192, 202, 245, 0.24)); + border-radius: 3px; } .inv-label { display: flex; @@ -462,7 +466,8 @@ gap: 0.3rem; align-items: center; padding: 0.25rem 0.6rem 0.25rem 0.35rem; - border: 1px solid var(--border, #2a2f45); + border: 2px solid var(--gn-border-color-muted, rgba(192, 202, 245, 0.24)); + border-radius: 3px; background: color-mix(in srgb, var(--warning, #e0af68) 10%, transparent); font-size: 0.85em; font-weight: 600; diff --git a/frontend/src/components/MdEditor.vue b/frontend/src/components/MdEditor.vue index 32ccdcb..2fa3291 100644 --- a/frontend/src/components/MdEditor.vue +++ b/frontend/src/components/MdEditor.vue @@ -237,7 +237,8 @@ } .md-thumb { padding: 0; - border: 1px solid var(--border, #2a2e42); + border: 2px solid var(--gn-border-color-muted, rgba(192, 202, 245, 0.24)); + border-radius: 3px; background: none; cursor: zoom-in; line-height: 0; diff --git a/frontend/src/components/TaskForm.vue b/frontend/src/components/TaskForm.vue index 7ebec53..01ee0e6 100644 --- a/frontend/src/components/TaskForm.vue +++ b/frontend/src/components/TaskForm.vue @@ -415,7 +415,8 @@ max-width: 100%; } .tags-fieldset { - border: 1px solid var(--border, #333); + border: 2px solid var(--gn-border-color-muted, rgba(192, 202, 245, 0.24)); + border-radius: 3px; padding: 0.75rem; display: flex; flex-wrap: wrap; @@ -450,7 +451,8 @@ .thumb img { max-width: 120px; max-height: 90px; - border: 1px solid var(--border, #333); + border: 2px solid var(--gn-border-color-muted, rgba(192, 202, 245, 0.24)); + border-radius: 3px; display: block; } .thumb .btn-icon { diff --git a/frontend/src/views/GardenView.vue b/frontend/src/views/GardenView.vue index 32292d9..3b2556c 100644 --- a/frontend/src/views/GardenView.vue +++ b/frontend/src/views/GardenView.vue @@ -637,17 +637,19 @@ } .level-node { padding: 0.6rem 0.75rem; - border: 1px solid var(--border, #2a2f45); + border: 2px solid var(--gn-border-color-muted, rgba(192, 202, 245, 0.24)); + border-radius: 6px; opacity: 0.6; } .level-node.past { opacity: 0.85; /* фон как у пройденных достижений: зелёная подложка */ - background: color-mix(in srgb, var(--success, #9ece6a) 8%, transparent); + background: color-mix(in srgb, var(--success, #9ece6a) 8%, var(--gn-surface-panel, #1f2335)); } .level-node.current { opacity: 1; - background: color-mix(in srgb, var(--accent, #7aa2f7) 8%, transparent); + background: color-mix(in srgb, var(--accent, #7aa2f7) 8%, var(--gn-surface-panel, #1f2335)); + border-color: color-mix(in srgb, var(--accent, #7aa2f7) 45%, var(--gn-border-color-muted, rgba(192, 202, 245, 0.24))); } .level-node-head { display: flex; @@ -733,7 +735,8 @@ gap: 0.6rem; align-items: center; padding: 0.6rem 0.75rem; - border: 1px solid var(--border, #2a2f45); + border: 2px solid var(--gn-border-color-muted, rgba(192, 202, 245, 0.24)); + border-radius: 6px; } .shop-card > i:first-child { font-size: 1.3rem; @@ -826,7 +829,8 @@ align-items: center; width: 100%; padding: 0.75rem; - border: 1px solid var(--border, #2a2f45); + border: 2px solid var(--gn-border-color-muted, rgba(192, 202, 245, 0.24)); + border-radius: 6px; background: none; color: inherit; font: inherit; @@ -836,7 +840,8 @@ } .achievement.unlocked { opacity: 1; - background: color-mix(in srgb, var(--success, #9ece6a) 8%, transparent); + background: color-mix(in srgb, var(--success, #9ece6a) 8%, var(--gn-surface-panel, #1f2335)); + border-color: color-mix(in srgb, var(--success, #9ece6a) 45%, var(--gn-border-color-muted, rgba(192, 202, 245, 0.24))); } .achievement > i { font-size: 1.3rem; diff --git a/frontend/src/views/ProjectView.vue b/frontend/src/views/ProjectView.vue index 881c034..a8efc33 100644 --- a/frontend/src/views/ProjectView.vue +++ b/frontend/src/views/ProjectView.vue @@ -1194,7 +1194,8 @@ align-items: center; } .md-preview { - border: 1px solid var(--border, #333); + border: 2px solid var(--gn-border-color-muted, rgba(192, 202, 245, 0.24)); + border-radius: 3px; padding: 0.75rem; overflow-x: auto; } diff --git a/frontend/src/views/ProjectsView.vue b/frontend/src/views/ProjectsView.vue index 30af1db..9b569e3 100644 --- a/frontend/src/views/ProjectsView.vue +++ b/frontend/src/views/ProjectsView.vue @@ -244,7 +244,8 @@ align-items: center; } .md-preview { - border: 1px solid var(--border, #333); + border: 2px solid var(--gn-border-color-muted, rgba(192, 202, 245, 0.24)); + border-radius: 3px; padding: 0.75rem; overflow-x: auto; } diff --git a/frontend/src/views/SettingsView.vue b/frontend/src/views/SettingsView.vue index 0f226cf..6a22617 100644 --- a/frontend/src/views/SettingsView.vue +++ b/frontend/src/views/SettingsView.vue @@ -264,8 +264,8 @@ .fresh-token { margin-bottom: 1rem; padding: 0.75rem; - border: 1px solid var(--border, #e0e0e0); - border-radius: 8px; + border: 2px solid var(--gn-border-color-muted, rgba(192, 202, 245, 0.24)); + border-radius: 6px; } .fresh-token-value { display: block; diff --git a/frontend/src/views/StatsView.vue b/frontend/src/views/StatsView.vue index af7fc6d..be119d1 100644 --- a/frontend/src/views/StatsView.vue +++ b/frontend/src/views/StatsView.vue @@ -633,7 +633,8 @@ align-items: flex-end; gap: 0.3rem; padding: 0.75rem 0.5rem 0.25rem; - border: 1px solid var(--border, #2a2f45); + border: 2px solid var(--gn-border-color-muted, rgba(192, 202, 245, 0.24)); + border-radius: 6px; overflow-x: auto; } .chart-col { @@ -697,7 +698,8 @@ } .heatmap-wrap { padding: 0.75rem; - border: 1px solid var(--border, #2a2f45); + border: 2px solid var(--gn-border-color-muted, rgba(192, 202, 245, 0.24)); + border-radius: 6px; overflow-x: auto; } .heatmap { diff --git a/frontend/src/views/TaskView.vue b/frontend/src/views/TaskView.vue index 611762d..6403445 100644 --- a/frontend/src/views/TaskView.vue +++ b/frontend/src/views/TaskView.vue @@ -1437,7 +1437,8 @@ width: 100%; aspect-ratio: 4 / 3; object-fit: cover; - border: 1px solid var(--border, #333); + border: 2px solid var(--gn-border-color-muted, rgba(192, 202, 245, 0.24)); + border-radius: 3px; display: block; } .att-name {