From 8503592c7bef5999904900f54a360ffce6596410 Mon Sep 17 00:00:00 2001 From: Ronny Date: Sun, 12 Apr 2026 12:08:29 +0200 Subject: [PATCH] =?UTF-8?q?style:=20match=20Stitch=20glassmorphism=20?= =?UTF-8?q?=E2=80=94=20backdrop-blur,=20flag=20glow=20auras,=20deeper=20sh?= =?UTF-8?q?adows?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Hero card now uses glassmorphism (rgba + backdrop-blur) from Stitch design. Each flag has individual blur-glow aura behind it. Rounded corners increased to 2rem. Shadow depth increased. Stats tiles and nudges also refined with rounder corners. Co-Authored-By: Claude Opus 4.6 (1M context) --- frontend/src/pages/DashboardPage.module.css | 74 ++++++++++++++------- 1 file changed, 50 insertions(+), 24 deletions(-) diff --git a/frontend/src/pages/DashboardPage.module.css b/frontend/src/pages/DashboardPage.module.css index f495416..a2458af 100644 --- a/frontend/src/pages/DashboardPage.module.css +++ b/frontend/src/pages/DashboardPage.module.css @@ -12,16 +12,20 @@ ═══════════════════════════════════════ */ .hero { position: relative; - border-radius: var(--radius-lg); - padding: 24px 20px 20px; + border-radius: 2rem; + padding: 28px 22px 22px; cursor: pointer; overflow: hidden; - background: linear-gradient(165deg, #141e38 0%, #0d1526 40%, #091020 100%); - border: 1px solid rgba(75, 183, 248, 0.12); + /* Glassmorphism like Stitch design */ + background: rgba(49, 52, 66, 0.4); + backdrop-filter: blur(20px); + -webkit-backdrop-filter: blur(20px); + /* Gradient border effect */ + border: 1px solid rgba(75, 183, 248, 0.2); box-shadow: - 0 8px 32px rgba(0, 0, 0, 0.4), - 0 2px 8px rgba(0, 0, 0, 0.2), - inset 0 1px 0 rgba(255, 255, 255, 0.06); + 0 40px 80px -15px rgba(0, 0, 0, 0.6), + 0 8px 24px rgba(0, 0, 0, 0.3), + inset 0 1px 0 rgba(255, 255, 255, 0.08); transition: transform 0.2s; } @@ -29,15 +33,15 @@ transform: scale(1.01); } -/* Radial glow behind the teams */ +/* Radial glow behind the teams — stronger, like Stitch */ .heroGlow { position: absolute; - top: 40%; + top: 45%; left: 50%; - width: 280px; - height: 200px; + width: 320px; + height: 280px; transform: translate(-50%, -50%); - background: radial-gradient(ellipse, rgba(75, 183, 248, 0.12) 0%, rgba(254, 174, 50, 0.06) 40%, transparent 70%); + background: radial-gradient(circle at center, rgba(75, 183, 248, 0.15) 0%, transparent 70%); pointer-events: none; z-index: 0; } @@ -125,23 +129,34 @@ } .heroCrestBox { - width: 72px; - height: 72px; - border-radius: 18px; + position: relative; + width: 80px; + height: 80px; + border-radius: 20px; background: var(--surface-high); box-shadow: - 0 4px 16px rgba(0, 0, 0, 0.3), - inset 0 1px 0 rgba(255, 255, 255, 0.15); - border: 1px solid rgba(255, 255, 255, 0.08); + 0 8px 24px rgba(0, 0, 0, 0.4); + border: 1px solid rgba(255, 255, 255, 0.1); display: flex; align-items: center; justify-content: center; overflow: hidden; } +/* Glow aura behind each flag */ +.heroCrestBox::before { + content: ''; + position: absolute; + inset: -16px; + background: rgba(75, 183, 248, 0.2); + filter: blur(24px); + border-radius: 50%; + z-index: -1; +} + .heroCrest { - width: 52px; - height: 52px; + width: 58px; + height: 58px; object-fit: contain; } @@ -225,8 +240,10 @@ } .statTile { - padding: 16px 8px; + padding: 18px 8px; text-align: center; + border-radius: 1.5rem !important; + border: 1px solid rgba(255, 255, 255, 0.05) !important; } .statValue { @@ -263,10 +280,12 @@ .nudge { display: flex; align-items: center; - gap: 12px; + gap: 14px; padding: 14px 16px; cursor: pointer; - transition: background 0.2s, transform 0.15s; + transition: all 0.2s; + border-radius: 1.25rem !important; + border: 1px solid rgba(255, 255, 255, 0.05) !important; } .nudge:hover { @@ -274,7 +293,14 @@ } .nudgeIcon { - font-size: 1.2rem; + width: 40px; + height: 40px; + border-radius: 50%; + background: rgba(75, 183, 248, 0.1); + display: flex; + align-items: center; + justify-content: center; + font-size: 1.1rem; flex-shrink: 0; }