From c37e0d0b1b8696e689724f66185fd487fb738ef9 Mon Sep 17 00:00:00 2001 From: Matt Date: Sun, 31 Aug 2025 23:19:50 +0200 Subject: [PATCH] Fix sidebar collapse and redesign profile section MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Increased rail mode width from 56px to 80px to properly fit icons - Updated rail-width prop in all three layout files (admin, board, member) - Redesigned profile section with improved layout and positioning - Added horizontal layout in expanded mode with avatar, info, and menu button - Implemented responsive design that switches to vertical layout in collapsed mode - Enhanced menu with colorful icons and hover effects - Added role badges (Admin, Board, Member) for better visual identification - Improved glass morphism effects on profile card and menu - Added smooth transitions and hover animations 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- assets/scss/main.scss | 58 ++++++++++++++++++++++++- layouts/admin.vue | 99 ++++++++++++++++++++++++++----------------- layouts/board.vue | 99 ++++++++++++++++++++++++++----------------- layouts/member.vue | 98 +++++++++++++++++++++++++++--------------- 4 files changed, 237 insertions(+), 117 deletions(-) diff --git a/assets/scss/main.scss b/assets/scss/main.scss index 5e960d3..2d27d48 100644 --- a/assets/scss/main.scss +++ b/assets/scss/main.scss @@ -938,9 +938,9 @@ $screen-xl: 1280px; min-width: 280px; } - // Ensure rail mode uses correct width + // Ensure rail mode uses correct width - increased to fit icons &.v-navigation-drawer--rail { - width: 56px !important; + width: 80px !important; } &__content { @@ -981,4 +981,58 @@ $screen-xl: 1280px; .dashboard-header { padding: 1rem !important; } +} + +// Enhanced Profile Card Styles +.glass-profile-card { + background: rgba(255, 255, 255, 0.08) !important; + backdrop-filter: blur(10px) !important; + border: 1px solid rgba(255, 255, 255, 0.1) !important; + border-radius: 12px !important; + transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important; + + &:hover { + background: rgba(255, 255, 255, 0.12) !important; + border-color: rgba(255, 255, 255, 0.15) !important; + box-shadow: 0 8px 32px rgba(31, 38, 135, 0.15) !important; + } +} + +.profile-menu-btn { + transition: all 0.2s ease !important; + + &:hover { + transform: scale(1.05) !important; + background: rgba(255, 255, 255, 0.1) !important; + } +} + +.glass-menu { + background: rgba(28, 28, 30, 0.95) !important; + backdrop-filter: blur(20px) !important; + border: 1px solid rgba(255, 255, 255, 0.1) !important; + border-radius: 12px !important; + overflow: hidden !important; + + .v-list-item { + transition: all 0.2s ease !important; + + &:hover { + background: rgba(255, 255, 255, 0.08) !important; + padding-left: 20px !important; + } + + &.hover-lift:hover { + transform: translateX(4px) !important; + } + } +} + +.glass-badge { + background: linear-gradient(135deg, rgba(206, 26, 26, 0.2), rgba(255, 255, 255, 0.1)) !important; + backdrop-filter: blur(10px) !important; + border: 1px solid rgba(206, 26, 26, 0.3) !important; + color: #CE1A1A !important; + font-weight: 600 !important; + letter-spacing: 0.5px !important; } \ No newline at end of file diff --git a/layouts/admin.vue b/layouts/admin.vue index b1a95ef..c2e753f 100644 --- a/layouts/admin.vue +++ b/layouts/admin.vue @@ -6,7 +6,7 @@ :expand-on-hover="false" permanent width="280" - rail-width="56" + rail-width="80" class="enhanced-glass-drawer" > @@ -276,53 +276,72 @@