diff --git a/web/src/components/MenuLink.vue b/web/src/components/MenuLink.vue index cb6ca79130..f77df47fc8 100644 --- a/web/src/components/MenuLink.vue +++ b/web/src/components/MenuLink.vue @@ -170,6 +170,9 @@ export default defineComponent({ margin: 0px; border-radius: 6px; + /* Always have a border to prevent layout shift when active */ + border: 1px solid transparent; + /* Minimal height to prevent scrollbar */ min-height: 24px; @@ -188,7 +191,7 @@ export default defineComponent({ // Phase 2: Enhanced hover state &:hover:not(.q-router-link--active) { - transform: scale(1.02) translateZ(0); + transform: translateZ(0); background-color: rgba(30, 41, 59, 0.6); .q-icon { @@ -202,7 +205,7 @@ export default defineComponent({ // Phase 2 & 3: Enhanced active state with modern UX &.q-router-link--active { - transform: scale(1.05) translateZ(0) !important; + transform: translateZ(0) !important; // Rich, vibrant multi-layer gradient background background: linear-gradient(135deg, rgba(168, 85, 247, 0.4) 0%, rgba(236, 72, 153, 0.35) 100%), diff --git a/web/src/views/HomeView.vue b/web/src/views/HomeView.vue index 4ddfc49364..34fd2c252c 100644 --- a/web/src/views/HomeView.vue +++ b/web/src/views/HomeView.vue @@ -27,7 +27,12 @@ along with this program. If not, see . aria-label="Streams overview section" >
-
Streams
+
+ +
Streams
+
@@ -198,11 +203,11 @@ along with this program. If not, see .
-
+
-
+
-
+
.
-
+
.
-
. />
-
.column > .row.justify-between { + flex-wrap: nowrap; + } +} + .first-chart-container { border-left: 3px solid var(--accent-orange); animation-delay: 350ms; @@ -1264,8 +1321,7 @@ export default defineComponent({ .chart-container, .streams-container { &:hover { - box-shadow: 0 8px 25px var(--hover-shadow); - transform: translateY(-2px); + box-shadow: 0 4px 12px var(--hover-shadow); } }