Skip to content

Commit 9181a47

Browse files
CopilotBoshen
andauthored
Transform dashboard UI to clean black on white theme with modern styling and enhanced accessibility (#39)
* Initial plan * Transform UI with modern dark theme and glass morphism effects Co-authored-by: Boshen <[email protected]> * Modernize dashboard header with sleek compact design Co-authored-by: Boshen <[email protected]> * Transform UI to modern green/teal theme with improved text contrast and enhanced navigation Co-authored-by: Boshen <[email protected]> * Enhance UI consistency with modern theme, improved typography, and accessible chart styling Co-authored-by: Boshen <[email protected]> * Transform UI to clean black on white theme with modern styling Co-authored-by: Boshen <[email protected]> --------- Co-authored-by: copilot-swe-agent[bot] <[email protected]> Co-authored-by: Boshen <[email protected]>
1 parent bea0804 commit 9181a47

File tree

3 files changed

+205
-73
lines changed

3 files changed

+205
-73
lines changed

apps/dashboard/src/App.css

Lines changed: 108 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -1,74 +1,120 @@
11
/* Dashboard Layout */
22
.dashboard {
33
min-height: 100vh;
4-
background-color: #f8fafc;
5-
color: #1a202c;
4+
background: #ffffff;
5+
color: #000000;
66
}
77

88
.dashboard-header {
9-
background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
9+
background: #000000;
10+
border-bottom: 1px solid #e5e5e5;
1011
color: white;
11-
padding: 2rem;
12-
box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
12+
padding: 1rem 2rem;
13+
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
1314
}
1415

16+
17+
1518
.header-content {
1619
max-width: 1200px;
1720
margin: 0 auto;
21+
display: flex;
22+
align-items: center;
23+
justify-content: space-between;
1824
}
1925

2026
.logo {
2127
display: flex;
2228
align-items: center;
2329
gap: 0.75rem;
24-
margin-bottom: 0.5rem;
2530
}
2631

2732
.logo h1 {
2833
margin: 0;
29-
font-size: 2rem;
34+
font-size: 1.5rem;
3035
font-weight: 700;
36+
color: white;
37+
letter-spacing: -0.025em;
3138
}
3239

33-
.header-content p {
40+
.header-subtitle {
3441
margin: 0;
35-
opacity: 0.9;
36-
font-size: 1.1rem;
42+
opacity: 0.85;
43+
font-size: 0.875rem;
44+
font-weight: 500;
45+
color: #cccccc;
46+
display: none;
47+
letter-spacing: 0.025em;
48+
}
49+
50+
@media (min-width: 768px) {
51+
.header-subtitle {
52+
display: block;
53+
}
54+
55+
.header-content {
56+
justify-content: flex-start;
57+
gap: 2rem;
58+
}
59+
60+
.logo h1 {
61+
font-size: 1.75rem;
62+
}
3763
}
3864

3965
/* Navigation */
4066
.dashboard-nav {
4167
background: white;
42-
padding: 1rem 2rem;
43-
box-shadow: 0 2px 4px -1px rgba(0, 0, 0, 0.1);
68+
border: 1px solid #e5e5e5;
69+
padding: 1.25rem 2rem;
70+
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
4471
display: flex;
4572
gap: 1rem;
4673
max-width: 1200px;
4774
margin: 0 auto;
4875
}
4976

77+
78+
5079
.nav-button {
5180
display: flex;
5281
align-items: center;
53-
gap: 0.5rem;
54-
padding: 0.75rem 1.5rem;
55-
border: none;
56-
background: transparent;
82+
gap: 0.625rem;
83+
padding: 1rem 2rem;
84+
border: 1px solid #d1d5db;
85+
background: white;
5786
border-radius: 0.5rem;
5887
cursor: pointer;
59-
font-weight: 500;
60-
transition: all 0.2s;
61-
color: #64748b;
88+
font-weight: 600;
89+
font-size: 0.95rem;
90+
transition: all 0.2s ease;
91+
color: #374151;
92+
text-transform: capitalize;
93+
letter-spacing: -0.025em;
6294
}
6395

96+
97+
6498
.nav-button:hover {
65-
background-color: #f1f5f9;
66-
color: #334155;
99+
background: #f9fafb;
100+
border-color: #6b7280;
101+
color: #111827;
102+
transform: translateY(-1px);
103+
box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
67104
}
68105

69106
.nav-button.active {
70-
background-color: #3b82f6;
107+
background: #000000;
108+
border-color: #000000;
71109
color: white;
110+
box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
111+
}
112+
113+
.nav-button.active::before {
114+
background: linear-gradient(90deg,
115+
transparent,
116+
rgba(255, 255, 255, 0.2),
117+
transparent);
72118
}
73119

74120
/* Main Content */
@@ -81,18 +127,23 @@
81127
gap: 2rem;
82128
}
83129

130+
/* Chart Container */
84131
.chart-container {
85132
background: white;
133+
border: 1px solid #e5e5e5;
86134
padding: 2rem;
87-
border-radius: 0.75rem;
88-
box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
135+
border-radius: 0.5rem;
136+
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
89137
}
90138

139+
140+
91141
.chart-container h2 {
92142
margin: 0 0 1.5rem 0;
93-
color: #1a202c;
143+
color: #111827;
94144
font-size: 1.5rem;
95145
font-weight: 600;
146+
letter-spacing: -0.025em;
96147
}
97148

98149
/* Stats Grid */
@@ -104,43 +155,59 @@
104155

105156
.stat-card {
106157
background: white;
107-
padding: 1.5rem;
108-
border-radius: 0.75rem;
109-
box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
110-
border-left: 4px solid #3b82f6;
158+
border: 1px solid #e5e5e5;
159+
padding: 1.75rem;
160+
border-radius: 0.5rem;
161+
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
162+
border-left: 4px solid #000000;
163+
transition: all 0.2s ease;
164+
}
165+
166+
167+
168+
.stat-card:hover {
169+
transform: translateY(-2px);
170+
box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
111171
}
112172

113173
.stat-card h3 {
114-
margin: 0 0 0.5rem 0;
115-
color: #64748b;
174+
margin: 0 0 0.75rem 0;
175+
color: #6b7280;
116176
font-size: 0.875rem;
117-
font-weight: 500;
177+
font-weight: 600;
118178
text-transform: uppercase;
119-
letter-spacing: 0.05em;
179+
letter-spacing: 0.1em;
120180
}
121181

122182
.stat-value {
123-
margin: 0 0 0.5rem 0;
124-
font-size: 2rem;
183+
margin: 0 0 0.75rem 0;
184+
font-size: 2.25rem;
125185
font-weight: 700;
126-
color: #1a202c;
186+
color: #111827;
187+
letter-spacing: -0.025em;
188+
line-height: 1.1;
127189
}
128190

129191
.stat-change {
130192
font-size: 0.875rem;
131-
font-weight: 500;
132-
padding: 0.25rem 0.5rem;
133-
border-radius: 0.25rem;
193+
font-weight: 600;
194+
padding: 0.375rem 0.75rem;
195+
border-radius: 0.5rem;
196+
display: inline-flex;
197+
align-items: center;
198+
gap: 0.25rem;
134199
}
135200

136201
.stat-change.positive {
137202
color: #059669;
138-
background-color: #d1fae5;
203+
background: rgba(16, 185, 129, 0.1);
204+
border: 1px solid rgba(16, 185, 129, 0.2);
139205
}
140206

141207
.stat-change.negative {
142208
color: #dc2626;
143-
background-color: #fee2e2;
209+
background: rgba(220, 38, 38, 0.1);
210+
border: 1px solid rgba(220, 38, 38, 0.2);
144211
}
145212

146213
/* Responsive Design */

0 commit comments

Comments
 (0)