]> jfr.im git - irc/freenode/web-7.0.git/blob - static/css/style.css
Merge pull request #17 from freenode/responsive-1
[irc/freenode/web-7.0.git] / static / css / style.css
1 /* vars */
2 :root {
3 --navbar-bg: #fff;
4 --jumbotron-bg: #eee;
5 --jumbotron-bg-fall: 65,225,64;
6 --copyright-bg: 170,178,171;
7 --link-color: 66,139,202;
8 --footer-link-color: 51,51,51;
9 --nlink-col: #000;
10 --text-color: #333;
11 --footer-text-color: 51,51,51;
12 --copyright-text-color: 0,0,0;
13 --jumbotron-text-color: #333;
14 --border-color: 0,0,0;
15 --footer-border-color: 51,51,51;
16 --box-hover-color: #ddd;
17 --box-round: 10px;
18 }
19
20 /* reset css for browser compat */
21 * {
22 margin: 0;
23 padding: 0;
24 box-sizing: border-box;
25 }
26
27 /* global */
28 body {
29 font-family: 'Open Sans';
30 color: var(--text-color);
31 font-size: 14px;
32 min-height: 100vh;
33 height: auto;
34 }
35
36 a {
37 color: rgb(var(--link-color));
38 text-decoration: none;
39 }
40
41 /* navbar */
42 .navbar {
43 width: 100%;
44 height: 50px;
45 background-color: var(--navbar-bg);
46 position: fixed;
47 left: 0;
48 right: 0;
49 top: 0;
50 display: flex;
51 flex-wrap: nowrap;
52 justify-content: space-between;
53 align-items: center;
54 border-bottom: 1px solid rgba(var(--border-color),.3);
55 z-index: 100;
56 }
57
58 .nlogo {
59 height: 40px;
60 }
61
62 .navlinks {
63 display: flex;
64 justify-content: space-around;
65 flex-wrap: nowrap;
66 }
67
68 .nlink {
69 text-decoration: none;
70 color: var(--nlink-col);
71 }
72
73 /* main */
74 .container {
75 padding: 50px 0 0;
76 width: 100%;
77 min-height: 68vh;
78 }
79
80 .main {
81 margin-left: .5em;
82 margin-top: 1em;
83 margin-bottom: 1em;
84 }
85
86 .main h1,
87 .main h2,
88 .main h3,
89 .main p + p {
90 margin-top: .5em;
91 }
92
93 /* jumbotron */
94 .jumbotron {
95 position: relative;
96 width: 100%;
97 margin-top: -16px;
98 background: #000;
99 background: var(--jumbotron-bg);
100 box-shadow: 0 3px 5px rgba(150,150,150,.36);
101 color: var(--jumbotron-text-color);
102 }
103
104 .child {
105 text-align: center;
106 margin: .5em;
107 font-size: 32px;
108 line-height: 48px;
109 }
110
111 .box-container {
112 display: flex;
113 flex-wrap: wrap;
114 justify-content: space-around;
115 align-items: stretch;
116 max-width: 800px;
117 margin: 0 auto;
118 }
119
120 .box {
121 text-align: center;
122 text-decoration: none;
123 color: var(--text-color);
124 margin-bottom: 5px;
125 padding: 5px;
126 flex-basis: 30%;
127 background-color: #fff;
128 border-radius: var(--box-round);
129 -webkit-border-radius: var(--box-round);
130 -moz-border-radius: var(--box-round);
131 }
132
133 .box span {
134 display: block;
135 }
136
137 .box:hover,.box:active {
138 background-color: var(--box-hover-color);
139 }
140
141 .box div{
142 font-size: 28px;
143 line-height: 28px;
144 padding-left: 8px;
145 font-weight: 700;
146 position: relative;
147 display: inline;
148 top: -10px;
149 }
150
151 .fa-users {
152 margin-top: 5px;
153 }
154
155 .fa-comment,.fa-question {
156 margin-bottom: 5px;
157 }
158
159 .fa-4x {
160 padding-left: 8px;
161 }
162
163 .title {
164 text-align: center;
165 }
166
167 /* articles feed */
168 h1 {
169 margin: 0;
170 }
171
172 div.art {
173 clear: right;
174 }
175
176 div.art:not(:first-child) {
177 border-top: 1px solid rgba(var(--border-color),.3);
178 }
179
180 b.art {
181 margin-bottom: 0;
182 font-size: 18px;
183 }
184
185 p.art {
186 margin: 0;
187 }
188
189 p.art-ingress {
190 font-style: italic;
191 margin: 0;
192 }
193
194 .art-date {
195 float: right;
196 color: #ccc;
197 margin: 0 .5em;
198 }
199
200 p.heading {
201 white-space: nowrap;
202 }
203
204 p.art-link {
205 margin-top: 0;
206 }
207
208 /* Article */
209 .art-full h1,
210 .art-full h2,
211 .art-full h3,
212 .art-full h4 {}
213
214 /* help */
215 .hmain {
216 display: flex;
217 flex-wrap: wrap;
218 justify-content: space-around;
219 align-items: stretch;
220 }
221
222 a.hchild {
223 color: var(--text-color);
224 /*height: 40px;*/
225 width: 95%;
226 text-align: center;
227 border-top: 1px solid rgba(var(--border-color),.6);
228 border-left: 1px solid rgba(var(--border-color),.6);
229 border-right: 1px solid rgba(var(--border-color),.6);
230 }
231
232 a.hchild:hover,a.hchild:active {
233 background-color: var(--box-hover-color);
234 }
235
236 .hchild:first-child {
237 margin-top: 10px;
238 -webkit-border-top-left-radius: var(--box-round);
239 -webkit-border-top-right-radius: var(--box-round);
240 -moz-border-radius-topleft: var(--box-round);
241 -moz-border-radius-topright: var(--box-round);
242 border-top-left-radius: var(--box-round);
243 border-top-right-radius: var(--box-round);
244 }
245
246 .hchild:last-child {
247 margin-bottom: 10px;
248 border-bottom: 1px solid rgba(var(--border-color),.6);
249 -webkit-border-bottom-right-radius: var(--box-round);
250 -webkit-border-bottom-left-radius: var(--box-round);
251 -moz-border-radius-bottomright: var(--box-round);
252 -moz-border-radius-bottomleft: var(--box-round);
253 border-bottom-right-radius: var(--box-round);
254 border-bottom-left-radius: var(--box-round);
255 }
256
257 /* footer */
258 .footers {
259 min-height: 30vh;
260 }
261
262 .footer {
263 background: var(--jumbotron-bg);
264 color: rgba(var(--footer-text-color),.9);
265 margin-top: 2vh;
266 display: flex;
267 flex-wrap: wrap;
268 min-height: 27vh;
269 justify-content: space-between;
270 align-items: flex-start;
271 box-shadow: 0 -3px 5px rgba(150,150,150,.36);
272 }
273
274 .footerchild {
275 margin-top: .5em;
276 flex: 1 1 1px;
277 min-width: 12em;
278 }
279
280 .footer-push {
281 margin-left: auto;
282 min-width: 12em;
283 max-width: max-content;
284 }
285
286 .footer a {
287 color: #000;
288 }
289
290 .footer h2 {
291 margin-bottom: 9px;
292 display: inline-block;
293 }
294
295 .footerchild ul,.footerchild ul ul {
296 margin-left: 10px;
297 margin-right: 10px;
298 list-style-type: none;
299 }
300
301 .footerchild ul ul {
302 padding-left: 30px;
303 }
304
305 @media all and (max-width: 600px) {
306 .footer {
307 flex-direction: column;
308 }
309
310 .footerchild {
311 width: 100%;
312 }
313
314 .footer-push {
315 margin-left: 0;
316 }
317
318 .footerchild ul li:last-child {
319 margin-bottom: .5em;
320 }
321
322 .hdn {
323 display: none;
324 }
325
326 .box {
327 text-align: center;
328 }
329
330 .child {
331 font-size: 20px;
332 line-height: 30px;
333 padding: 10px 0 5px;
334 }
335
336 .fa-4x {
337 padding: 0;
338 margin: 0;
339 }
340
341 .box-container {
342 flex-direction: column;
343 margin: 0 .5em;
344 }
345
346 .box div {
347 position: relative;
348 top: initial;
349 font-size: 16px;
350 font-weight: normal;
351 line-height: 16px;
352 padding: 10px 0;
353 display: block;
354 }
355 }
356
357 .footer h2,.footer h3 {
358 margin-left: 10px;
359 margin-right: 10px;
360 }
361
362 .copyright {
363 display: flex;
364 flex-wrap: nowrap;
365 justify-content: space-between;
366 align-items: center;
367 background: rgba(var(--copyright-bg),.5);
368 height: 3vh;
369 color: rgba(var(--copyright-text-color),.8);
370 }
371
372 a.copyright {
373 background: rgba(var(--copyright-bg),.5);
374 margin-bottom: 0;
375 margin-top: 0;
376 margin-left: .5em;
377 margin-right: .5em;
378 width: auto;
379 height: auto;
380 }
381
382 .copyright a img {
383 height: 3vh;
384 width: auto;
385 }
386
387 .copyright p {
388 margin-bottom: 0;
389 margin-top: 0;
390 margin-left: .5em;
391 margin-right: .5em;
392 text-align: right;
393 }
394
395 @media all and (max-width: 600px) {
396 .copyright {
397 height: 5vh;
398 }
399
400 .copyright a img {
401 height: 5vh;
402 }
403 }