Desmond-Dong commited on
Commit
eec05e8
·
1 Parent(s): 4dbe61e

\"style: adopt HA Material Design\"

Browse files
Files changed (1) hide show
  1. style.css +84 -78
style.css CHANGED
@@ -7,58 +7,53 @@
7
  :root {
8
  /* Home Assistant Color Palette */
9
  --ha-primary: #03a9f4;
10
- --ha-primary-dark: #0288d1;
11
  --ha-secondary: #4db6ac;
12
- --ha-accent: #ff9800;
13
- --ha-background: #fafafa;
14
- --ha-surface: #ffffff;
15
  --ha-text-primary: #212121;
16
  --ha-text-secondary: #757575;
17
  --ha-divider: #e0e0e0;
 
 
18
  }
19
 
20
  body {
21
- font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
22
  line-height: 1.6;
23
  color: var(--ha-text-primary);
24
- background: linear-gradient(180deg, var(--ha-secondary) 0%, var(--ha-primary-dark) 50%, var(--ha-primary-dark) 100%);
25
  min-height: 100vh;
26
  }
27
 
28
  .hero {
29
- background: linear-gradient(180deg, var(--ha-primary-dark) 0%, var(--ha-primary) 60%, transparent 100%);
30
  color: white;
31
- padding: 4rem 2rem 2rem 2rem;
32
  text-align: center;
33
- position: relative;
34
- margin-bottom: -4rem;
35
  }
36
 
37
  .hero-content {
38
  max-width: 800px;
39
  margin: 0 auto;
40
- position: relative;
41
- z-index: 2;
42
  }
43
 
44
  .app-icon {
45
- font-size: 4rem;
46
- margin-bottom: 1rem;
47
  display: inline-block;
48
  }
49
 
50
  .hero h1 {
51
- font-size: 3rem;
52
- font-weight: 700;
53
- margin-bottom: 1rem;
54
- background: linear-gradient(45deg, #fff, #f0f9ff);
55
- background-clip: text;
56
- -webkit-background-clip: text;
57
- -webkit-text-fill-color: transparent;
58
  }
59
 
60
  .tagline {
61
- font-size: 1.25rem;
62
  opacity: 0.9;
63
  max-width: 600px;
64
  margin: 0 auto;
@@ -67,65 +62,66 @@ body {
67
  .container {
68
  max-width: 1200px;
69
  margin: 0 auto;
70
- padding: 0 2rem;
71
- position: relative;
72
- z-index: 2;
73
  }
74
 
75
  .main-card {
76
- background: var(--ha-surface);
77
- border-radius: 20px;
78
- box-shadow: 0 20px 40px rgba(0, 0, 0, 0.1);
79
- overflow: hidden;
80
- margin-bottom: 3rem;
81
  }
82
 
83
  .app-details {
84
- padding: 3rem;
85
  }
86
 
87
  .app-details h2 {
88
- font-size: 2rem;
89
- color: var(--ha-primary-dark);
90
- margin-bottom: 2rem;
91
- text-align: center;
 
92
  }
93
 
94
  .template-info {
95
  display: grid;
96
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
97
- gap: 2rem;
98
- margin-bottom: 3rem;
99
  }
100
 
101
  .info-box {
102
- background: var(--ha-background);
103
- border: 2px solid var(--ha-divider);
104
- border-radius: 12px;
105
- padding: 2rem;
106
- transition: all 0.3s ease;
 
107
  }
108
 
109
  .info-box:hover {
110
- box-shadow: 0 4px 12px rgba(3, 169, 244, 0.15);
111
  transform: translateY(-2px);
112
  }
113
 
114
  .info-box h3 {
115
- color: var(--ha-primary-dark);
116
- margin-bottom: 1rem;
117
- font-size: 1.2rem;
 
118
  }
119
 
120
  .info-box p {
121
  color: var(--ha-text-secondary);
122
- line-height: 1.6;
 
123
  }
124
 
125
  .info-box a {
126
  color: var(--ha-primary);
127
  text-decoration: none;
128
- font-weight: 600;
129
  }
130
 
131
  .info-box a:hover {
@@ -133,24 +129,24 @@ body {
133
  }
134
 
135
  .how-to-use {
136
- background: #e3f2fd;
137
- border: 2px solid var(--ha-primary);
138
- border-radius: 12px;
139
- padding: 2rem;
140
- margin-top: 3rem;
141
  }
142
 
143
  .how-to-use h3 {
144
- color: var(--ha-primary-dark);
145
- margin-bottom: 1.5rem;
146
- font-size: 1.3rem;
147
- text-align: center;
148
  }
149
 
150
  .steps {
151
  display: flex;
152
  flex-direction: column;
153
- gap: 1.5rem;
154
  }
155
 
156
  .step {
@@ -162,37 +158,43 @@ body {
162
  .step-number {
163
  background: var(--ha-primary);
164
  color: white;
165
- width: 2rem;
166
- height: 2rem;
167
  border-radius: 50%;
168
  display: flex;
169
  align-items: center;
170
  justify-content: center;
171
- font-weight: bold;
172
  flex-shrink: 0;
 
173
  }
174
 
175
  .step h4 {
176
- color: var(--ha-primary-dark);
177
- margin-bottom: 0.5rem;
178
- font-size: 1.1rem;
 
179
  }
180
 
181
  .step p {
182
  color: var(--ha-text-secondary);
 
183
  }
184
 
185
  .footer {
186
  text-align: center;
187
- padding: 2rem;
188
- color: white;
189
- opacity: 0.8;
 
 
 
190
  }
191
 
192
  .footer a {
193
- color: white;
194
  text-decoration: none;
195
- font-weight: 600;
196
  }
197
 
198
  .footer a:hover {
@@ -200,24 +202,28 @@ body {
200
  }
201
 
202
  /* Responsive Design */
203
- @media (max-width: 768px) {
204
  .hero {
205
- padding: 2rem 1rem;
 
 
 
 
206
  }
207
 
208
  .hero h1 {
209
- font-size: 2rem;
210
  }
211
 
212
- .container {
213
- padding: 0 1rem;
214
  }
215
 
216
- .app-details {
217
- padding: 2rem;
218
  }
219
 
220
- .template-info {
221
- grid-template-columns: 1fr;
222
  }
223
  }
 
7
  :root {
8
  /* Home Assistant Color Palette */
9
  --ha-primary: #03a9f4;
10
+ --ha-primary-variant: #0288d1;
11
  --ha-secondary: #4db6ac;
12
+ --ha-background: #f5f5f5;
13
+ --ha-card-background: #ffffff;
 
14
  --ha-text-primary: #212121;
15
  --ha-text-secondary: #757575;
16
  --ha-divider: #e0e0e0;
17
+ --ha-shadow: 0 2px 2px 0 rgba(0,0,0,0.14), 0 3px 1px -2px rgba(0,0,0,0.12), 0 1px 5px 0 rgba(0,0,0,0.2);
18
+ --ha-shadow-hover: 0 5px 5px -3px rgba(0,0,0,0.2), 0 8px 10px 1px rgba(0,0,0,0.14), 0 3px 14px 2px rgba(0,0,0,0.12);
19
  }
20
 
21
  body {
22
+ font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;
23
  line-height: 1.6;
24
  color: var(--ha-text-primary);
25
+ background: var(--ha-background);
26
  min-height: 100vh;
27
  }
28
 
29
  .hero {
30
+ background: var(--ha-primary);
31
  color: white;
32
+ padding: 2rem 1rem;
33
  text-align: center;
34
+ box-shadow: var(--ha-shadow);
 
35
  }
36
 
37
  .hero-content {
38
  max-width: 800px;
39
  margin: 0 auto;
 
 
40
  }
41
 
42
  .app-icon {
43
+ font-size: 3rem;
44
+ margin-bottom: 0.5rem;
45
  display: inline-block;
46
  }
47
 
48
  .hero h1 {
49
+ font-size: 2rem;
50
+ font-weight: 500;
51
+ margin-bottom: 0.5rem;
52
+ color: white;
 
 
 
53
  }
54
 
55
  .tagline {
56
+ font-size: 1rem;
57
  opacity: 0.9;
58
  max-width: 600px;
59
  margin: 0 auto;
 
62
  .container {
63
  max-width: 1200px;
64
  margin: 0 auto;
65
+ padding: 1rem;
 
 
66
  }
67
 
68
  .main-card {
69
+ background: transparent;
70
+ box-shadow: none;
71
+ overflow: visible;
72
+ margin-bottom: 2rem;
 
73
  }
74
 
75
  .app-details {
76
+ padding: 0;
77
  }
78
 
79
  .app-details h2 {
80
+ font-size: 1.5rem;
81
+ font-weight: 400;
82
+ color: var(--ha-primary);
83
+ margin-bottom: 1rem;
84
+ margin-top: 2rem;
85
  }
86
 
87
  .template-info {
88
  display: grid;
89
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
90
+ gap: 1rem;
91
+ margin-bottom: 1rem;
92
  }
93
 
94
  .info-box {
95
+ background: var(--ha-card-background);
96
+ border-radius: 8px;
97
+ padding: 1.5rem;
98
+ box-shadow: var(--ha-shadow);
99
+ transition: box-shadow 0.3s ease, transform 0.3s ease;
100
+ border: 1px solid var(--ha-divider);
101
  }
102
 
103
  .info-box:hover {
104
+ box-shadow: var(--ha-shadow-hover);
105
  transform: translateY(-2px);
106
  }
107
 
108
  .info-box h3 {
109
+ color: var(--ha-primary);
110
+ margin-bottom: 0.75rem;
111
+ font-size: 1.1rem;
112
+ font-weight: 500;
113
  }
114
 
115
  .info-box p {
116
  color: var(--ha-text-secondary);
117
+ line-height: 1.5;
118
+ font-size: 0.95rem;
119
  }
120
 
121
  .info-box a {
122
  color: var(--ha-primary);
123
  text-decoration: none;
124
+ font-weight: 500;
125
  }
126
 
127
  .info-box a:hover {
 
129
  }
130
 
131
  .how-to-use {
132
+ background: #e1f5fe;
133
+ border-radius: 8px;
134
+ padding: 1.5rem;
135
+ margin-top: 1.5rem;
136
+ border: 1px solid #b3e5fc;
137
  }
138
 
139
  .how-to-use h3 {
140
+ color: var(--ha-primary-variant);
141
+ margin-bottom: 1rem;
142
+ font-size: 1.1rem;
143
+ font-weight: 500;
144
  }
145
 
146
  .steps {
147
  display: flex;
148
  flex-direction: column;
149
+ gap: 1rem;
150
  }
151
 
152
  .step {
 
158
  .step-number {
159
  background: var(--ha-primary);
160
  color: white;
161
+ width: 1.75rem;
162
+ height: 1.75rem;
163
  border-radius: 50%;
164
  display: flex;
165
  align-items: center;
166
  justify-content: center;
167
+ font-weight: 500;
168
  flex-shrink: 0;
169
+ font-size: 0.9rem;
170
  }
171
 
172
  .step h4 {
173
+ color: var(--ha-text-primary);
174
+ margin-bottom: 0.25rem;
175
+ font-size: 1rem;
176
+ font-weight: 500;
177
  }
178
 
179
  .step p {
180
  color: var(--ha-text-secondary);
181
+ font-size: 0.9rem;
182
  }
183
 
184
  .footer {
185
  text-align: center;
186
+ padding: 2rem 1rem;
187
+ color: var(--ha-text-secondary);
188
+ font-size: 0.85rem;
189
+ border-top: 1px solid var(--ha-divider);
190
+ margin-top: 2rem;
191
+ background: var(--ha-card-background);
192
  }
193
 
194
  .footer a {
195
+ color: var(--ha-primary);
196
  text-decoration: none;
197
+ font-weight: 500;
198
  }
199
 
200
  .footer a:hover {
 
202
  }
203
 
204
  /* Responsive Design */
205
+ @media (min-width: 768px) {
206
  .hero {
207
+ padding: 3rem 1rem;
208
+ }
209
+
210
+ .app-icon {
211
+ font-size: 4rem;
212
  }
213
 
214
  .hero h1 {
215
+ font-size: 2.5rem;
216
  }
217
 
218
+ .tagline {
219
+ font-size: 1.1rem;
220
  }
221
 
222
+ .app-details h2 {
223
+ font-size: 1.75rem;
224
  }
225
 
226
+ .container {
227
+ padding: 2rem 1rem;
228
  }
229
  }